From 7ad54e7791f3bd091c3d5423dd2c912fb735c4f0 Mon Sep 17 00:00:00 2001 From: imccyu <276526105+imccyu@users.noreply.github.com> Date: Wed, 12 Aug 2026 01:40:03 +0800 Subject: [PATCH] refactor(client): name the compile face in every client test filename A test file under packages/client now says which face it covers: `*.client.spec.{ts,tsx}` and its `*.client.{ts,tsx}` helpers belong to the Client aggregate, `*.host.spec.ts` to the host aggregate. The carrier's four node-half specs take the Host suffix. The two suffixes are mutually exclusive, so each aggregate excludes the other's and both keep one broad test glob: `exclude` wins over `include`, and `packages/client/**` no longer has to be excluded wholesale from the host program with per-file `files` entries carved back out of it. A Host-face spec that reaches only Host source therefore needs no cross-face project reference, which the split-project rule rejects. vitest still discovers every file through `**/*.spec.{ts,tsx}`. --- ...i-helpers.spec.ts => api-helpers.client.spec.ts} | 0 ...trust.spec.ts => api-request-trust.host.spec.ts} | 0 ...nt-apply.spec.ts => client-apply.client.spec.ts} | 0 ...connection.spec.ts => connection.client.spec.ts} | 2 +- .../tests/{fake-api.ts => fake-api.client.ts} | 0 ...ands.spec.ts => fixture-commands.client.spec.ts} | 0 .../{fixture.spec.ts => fixture.client.spec.ts} | 0 ...http-bridge.spec.ts => http-bridge.host.spec.ts} | 0 ...ame.spec.ts => loopback-hostname.client.spec.ts} | 0 .../{node-half.spec.ts => node-half.host.spec.ts} | 0 ...link.spec.ts => websocket-downlink.host.spec.ts} | 0 .../{node-half.spec.ts => node-half.client.spec.ts} | 0 .../tests/{apply.spec.ts => apply.client.spec.ts} | 0 .../tests/{host.spec.ts => host.client.spec.ts} | 0 .../{invariant.spec.ts => invariant.client.spec.ts} | 0 ...ge-row.spec.tsx => language-row.client.spec.tsx} | 0 .../tests/{locale.spec.ts => locale.client.spec.ts} | 0 ...-store.spec.ts => settings-store.client.spec.ts} | 0 .../tests/{loader.spec.ts => loader.client.spec.ts} | 0 .../{node-half.spec.ts => node-half.client.spec.ts} | 0 ...nt-apply.spec.ts => client-apply.client.spec.ts} | 2 +- ...ce.spec.ts => context-provenance.client.spec.ts} | Bin ...pec.ts => conversation-assembler.client.spec.ts} | 0 ...spec.ts => conversation-registry.client.spec.ts} | 2 +- ...ersation.spec.ts => conversation.client.spec.ts} | 0 .../{event-script.ts => event-script.client.ts} | 0 .../tests/{fake-api.ts => fake-api.client.ts} | 0 .../{invariant.spec.ts => invariant.client.spec.ts} | 0 .../{lineage.spec.ts => lineage.client.spec.ts} | 0 .../{manager.spec.ts => manager.client.spec.ts} | 4 ++-- .../{node-half.spec.ts => node-half.client.spec.ts} | 0 .../{notifier.spec.ts => notifier.client.spec.ts} | 0 .../{partial.spec.ts => partial.client.spec.ts} | 0 ...tore.spec.ts => projection-store.client.spec.ts} | 4 ++-- ...eue-store.spec.ts => queue-store.client.spec.ts} | 2 +- .../tests/{scope.spec.ts => scope.client.spec.ts} | 0 .../{session.spec.ts => session.client.spec.ts} | 4 ++-- ...vice.spec.ts => sessions-service.client.spec.ts} | 2 +- ...service.spec.ts => slots-service.client.spec.ts} | 0 .../tests/{store.spec.ts => store.client.spec.ts} | 0 ...eage.spec.ts => subagent-lineage.client.spec.ts} | 0 .../{time-zone.spec.ts => time-zone.client.spec.ts} | 0 ...l-tree.spec.ts => tool-call-tree.client.spec.ts} | 0 ...re-events.spec.ts => wire-events.client.spec.ts} | 2 +- ...ce.spec.ts => workspaces-service.client.spec.ts} | 2 +- .../{invariant.spec.ts => invariant.client.spec.ts} | 0 .../tests/{model.spec.ts => model.client.spec.ts} | 0 ...e.spec.tsx.snap => runtime.client.spec.tsx.snap} | 0 .../{invariant.spec.ts => invariant.client.spec.ts} | 0 .../tests/{remote.spec.ts => remote.client.spec.ts} | 0 .../{runtime.spec.tsx => runtime.client.spec.tsx} | 0 .../tests/{apply.spec.ts => apply.client.spec.ts} | 0 ...mponents.spec.tsx => components.client.spec.tsx} | 0 .../{invariant.spec.ts => invariant.client.spec.ts} | 0 .../{locales.spec.ts => locales.client.spec.ts} | 0 ...n-store.spec.ts => section-store.client.spec.ts} | 0 .../{section.spec.tsx => section.client.spec.tsx} | 0 ...-store.spec.ts => settings-store.client.spec.ts} | 0 ...ail.spec.tsx => attachment-rail.client.spec.tsx} | 0 ...tbox.spec.tsx => image-lightbox.client.spec.tsx} | 0 .../{invariant.spec.ts => invariant.client.spec.ts} | 0 ...image.spec.tsx => message-image.client.spec.tsx} | 0 ...plugin.spec.ts => browser-plugin.client.spec.ts} | 0 .../{directory.spec.ts => directory.client.spec.ts} | 0 ...pup-view.spec.tsx => popup-view.client.spec.tsx} | 0 .../tests/{popup.spec.ts => popup.client.spec.ts} | 0 .../{service.spec.ts => service.client.spec.ts} | 0 ...inject.spec.tsx => apply-inject.client.spec.tsx} | 0 ...s.spec.tsx => assembly-surfaces.client.spec.tsx} | 0 ...at-apply.spec.tsx => chat-apply.client.spec.tsx} | 0 ...s.spec.tsx => chat-branch-tails.client.spec.tsx} | 2 +- ...t-fixture.ts => chat-snapshot-fixture.client.ts} | 0 ...at-stats.spec.tsx => chat-stats.client.spec.tsx} | 2 +- ...chat-store.spec.ts => chat-store.client.spec.ts} | 0 ...chat-view.spec.tsx => chat-view.client.spec.tsx} | 2 +- ...meter.spec.tsx => context-meter.client.spec.tsx} | 0 ...=> conversation-node-definitions.client.spec.ts} | 0 ...ails.spec.tsx => coverage-tails.client.spec.tsx} | 0 ....spec.tsx => enter-behavior-row.client.spec.tsx} | 0 ...s.spec.tsx => gate-branch-tails.client.spec.tsx} | 2 +- .../tests/{host.spec.ts => host.client.spec.ts} | 0 ...labels.spec.tsx => image-labels.client.spec.tsx} | 0 ...input-bar.spec.tsx => input-bar.client.spec.tsx} | 0 ...machine.spec.ts => input-machine.client.spec.ts} | 0 ...matrix.spec.tsx => input-matrix.client.spec.tsx} | 0 ...ios.spec.tsx => input-scenarios.client.spec.tsx} | 2 +- ...eue-dock.spec.tsx => queue-dock.client.spec.tsx} | 0 ...g-row.spec.tsx => reasoning-row.client.spec.tsx} | 0 ....spec.tsx => selection-survival.client.spec.tsx} | 0 ...spec.ts => service-orchestration.client.spec.ts} | 0 .../{skeleton.spec.tsx => skeleton.client.spec.tsx} | 0 ...icy.spec.ts => submission-policy.client.spec.ts} | 0 ...do-panel.spec.tsx => todo-panel.client.spec.tsx} | 0 ...-metrics.spec.ts => turn-metrics.client.spec.ts} | 0 ...in.spec.tsx => views-type-chain.client.spec.tsx} | 0 ...iles.spec.tsx => produced-files.client.spec.tsx} | 0 ...nt-flow.spec.tsx => client-flow.client.spec.tsx} | 0 ...nt-flow.spec.tsx => client-flow.client.spec.tsx} | 0 ...r.spec.tsx => directory-browser.client.spec.tsx} | 0 ...ugin.spec.tsx => browser-plugin.client.spec.tsx} | 0 ....spec.tsx => goal-command-input.client.spec.tsx} | 0 .../{goalbar.spec.tsx => goalbar.client.spec.tsx} | 0 ...app-frame.spec.tsx => app-frame.client.spec.tsx} | 0 .../tests/{apply.spec.ts => apply.client.spec.ts} | 0 .../{columns.spec.ts => columns.client.spec.ts} | 0 ...ut-store.spec.ts => layout-store.client.spec.ts} | 0 .../{service.spec.ts => service.client.spec.ts} | 0 ...enter.spec.ts => theme-presenter.client.spec.ts} | 0 ...plugin.spec.ts => browser-plugin.client.spec.ts} | 0 ...select.spec.tsx => model-select.client.spec.tsx} | 0 .../tests/{apply.spec.ts => apply.client.spec.ts} | 0 ...mponents.spec.tsx => components.client.spec.tsx} | 0 .../{invariant.spec.ts => invariant.client.spec.ts} | 0 ...g.spec.tsx => onboarding-dialog.client.spec.tsx} | 0 ...-form.spec.tsx => provider-form.client.spec.tsx} | 0 .../{readiness.spec.ts => readiness.client.spec.ts} | 0 .../tests/{store.spec.ts => store.client.spec.ts} | 0 .../tests/{styles.spec.ts => styles.client.spec.ts} | 0 ...plugin.spec.ts => browser-plugin.client.spec.ts} | 0 ...-row.spec.tsx => permission-row.client.spec.tsx} | 0 ...-store.spec.ts => settings-store.client.spec.ts} | 0 ...plugin.spec.ts => browser-plugin.client.spec.ts} | 0 ...l.spec.tsx => plan-mode-control.client.spec.tsx} | 0 .../tests/{apply.spec.ts => apply.client.spec.ts} | 0 .../{fields.spec.tsx => fields.client.spec.tsx} | 0 .../{invariant.spec.ts => invariant.client.spec.ts} | 0 .../{section.spec.tsx => section.client.spec.tsx} | 0 .../tests/{stores.spec.ts => stores.client.spec.ts} | 0 .../tests/{ansi.spec.ts => ansi.client.spec.ts} | 0 .../tests/{atoms.spec.tsx => atoms.client.spec.tsx} | 0 ...de-block.spec.tsx => code-block.client.spec.tsx} | 0 ...ff-block.spec.tsx => diff-block.client.spec.tsx} | 0 ...ver-card.spec.tsx => hover-card.client.spec.tsx} | 0 .../tests/{icons.spec.tsx => icons.client.spec.tsx} | 0 .../{invariant.spec.ts => invariant.client.spec.ts} | 0 ...json-tree.spec.tsx => json-tree.client.spec.tsx} | 0 ...spec.tsx => markdown-dom-parity.client.spec.tsx} | 0 ...pec.tsx => markdown-incremental.client.spec.tsx} | 0 ...t.spec.ts => markdown-plain-text.client.spec.ts} | 0 ...ec.tsx => markdown-render-units.client.spec.tsx} | 0 .../{markdown.spec.tsx => markdown.client.spec.tsx} | 0 ....spec.tsx => onboarding-surface.client.spec.tsx} | 0 ...ad-block.spec.tsx => read-block.client.spec.tsx} | 0 ...-block.spec.tsx => search-block.client.spec.tsx} | 0 ...state-dot.spec.tsx => state-dot.client.spec.tsx} | 0 ...lock.spec.tsx => terminal-block.client.spec.tsx} | 0 .../tests/{toast.spec.tsx => toast.client.spec.tsx} | 0 .../{tooltip.spec.tsx => tooltip.client.spec.tsx} | 0 ...web-block.spec.tsx => web-block.client.spec.tsx} | 0 ...plugin.spec.ts => browser-plugin.client.spec.ts} | 0 ...de-plugin.spec.ts => node-plugin.client.spec.ts} | 0 ...l.spec.tsx => plan-review-panel.client.spec.tsx} | 0 ...r.spec.tsx => question-composer.client.spec.tsx} | 0 .../tests/{apply.spec.ts => apply.client.spec.ts} | 0 ...mponents.spec.tsx => components.client.spec.tsx} | 0 .../tests/{host.spec.ts => host.client.spec.ts} | 0 .../{invariant.spec.ts => invariant.client.spec.ts} | 0 ...ec.ts => settings-document-store.client.spec.ts} | 0 ...-root.spec.tsx => settings-root.client.spec.tsx} | 0 .../tests/{shell.spec.ts => shell.client.spec.ts} | 0 ...tice.spec.tsx => welcome-notice.client.spec.tsx} | 0 ...e-store.spec.ts => welcome-store.client.spec.ts} | 0 .../{invariant.spec.ts => invariant.client.spec.ts} | 0 .../tests/{plugin.spec.ts => plugin.client.spec.ts} | 0 ...-scope.spec.ts => settings-scope.client.spec.ts} | 0 ...x.snap => sidebar-snapshot.client.spec.tsx.snap} | 0 .../tests/{apply.spec.tsx => apply.client.spec.tsx} | 0 .../{invariant.spec.ts => invariant.client.spec.ts} | 0 ....spec.tsx => pointer-scrollbars.client.spec.tsx} | 0 ...pec.ts => scrollbar-quiet-styles.client.spec.ts} | 0 ...r-root.spec.tsx => sidebar-root.client.spec.tsx} | 0 ...ot.spec.tsx => sidebar-snapshot.client.spec.tsx} | 0 ...styles.spec.ts => sidebar-styles.client.spec.ts} | 0 ...plugin.spec.ts => browser-plugin.client.spec.ts} | 0 ...skill-row.spec.tsx => skill-row.client.spec.tsx} | 0 .../tests/{apply.spec.ts => apply.client.spec.ts} | 0 ...re-detect.spec.ts => core-detect.client.spec.ts} | 0 .../{core-menu.spec.ts => core-menu.client.spec.ts} | 0 ...menu-view.spec.tsx => menu-view.client.spec.tsx} | 0 .../{service.spec.ts => service.client.spec.ts} | 0 .../tests/{core.spec.ts => core.client.spec.ts} | 0 ...mic-keys.spec.ts => dynamic-keys.client.spec.ts} | 0 .../{invariant.spec.ts => invariant.client.spec.ts} | 0 ...pe-chain.spec.tsx => type-chain.client.spec.tsx} | 0 ...plugin.spec.ts => browser-plugin.client.spec.ts} | 0 ...-ui.spec.tsx => conversation-ui.client.spec.tsx} | 0 ...plugin.spec.ts => browser-plugin.client.spec.ts} | 0 ...on.spec.tsx => task-list-action.client.spec.tsx} | 0 ...-row.spec.tsx => appearance-row.client.spec.tsx} | 0 .../tests/{apply.spec.ts => apply.client.spec.ts} | 0 ...boot-theme.spec.ts => boot-theme.client.spec.ts} | 0 .../tests/{host.spec.ts => host.client.spec.ts} | 0 .../{invariant.spec.ts => invariant.client.spec.ts} | 0 ...yles.spec.ts => scrollbar-styles.client.spec.ts} | 0 ...-store.spec.ts => settings-store.client.spec.ts} | 0 .../tests/{theme.spec.ts => theme.client.spec.ts} | 0 ...ow.spec.tsx => ask-question-row.client.spec.tsx} | 0 ...s.spec.tsx => assembly-surfaces.client.spec.tsx} | 2 +- ....spec.tsx => chat-code-subcalls.client.spec.tsx} | 2 +- ...ails.spec.tsx => coverage-tails.client.spec.tsx} | 0 ...diff-card.spec.tsx => diff-card.client.spec.tsx} | 2 +- ...read-card.spec.tsx => read-card.client.spec.tsx} | 2 +- ...ch-card.spec.tsx => search-card.client.spec.tsx} | 2 +- ...-card.spec.tsx => terminal-card.client.spec.tsx} | 2 +- .../{todo-row.spec.tsx => todo-row.client.spec.tsx} | 0 ...tree.spec.tsx => tool-call-tree.client.spec.tsx} | 0 ...ls-render.tsx => tool-details-render.client.tsx} | 0 ...tyles.spec.ts => tool-row-styles.client.spec.ts} | 0 .../{tool-row.spec.tsx => tool-row.client.spec.tsx} | 0 ...-slot.spec.tsx => toolview-slot.client.spec.tsx} | 2 +- ...spec.tsx => toolview-type-chain.client.spec.tsx} | 0 .../{web-card.spec.tsx => web-card.client.spec.tsx} | 2 +- .../tests/{cell.spec.tsx => cell.client.spec.tsx} | 0 ...-bundle.spec.ts => client-bundle.client.spec.ts} | 0 ...c.ts => conversation-definitions.client.spec.ts} | 0 ...export-log.spec.ts => export-log.client.spec.ts} | 0 .../{layout.spec.tsx => layout.client.spec.tsx} | 0 ...lder.spec.ts => snapshot-builder.client.spec.ts} | 0 .../tests/{table.spec.tsx => table.client.spec.tsx} | 0 .../{toolbar.spec.tsx => toolbar.client.spec.tsx} | 0 .../tests/{views.spec.tsx => views.client.spec.tsx} | 0 ...ual-rows.spec.ts => virtual-rows.client.spec.ts} | 0 ...ow-run.spec.tsx => workflow-run.client.spec.tsx} | 0 .../tests/{apply.spec.ts => apply.client.spec.ts} | 0 ...styles.spec.ts => browser-styles.client.spec.ts} | 0 .../{invariant.spec.ts => invariant.client.spec.ts} | 0 ...bly.spec.tsx => rename-assembly.client.spec.tsx} | 0 .../tests/{rows.spec.tsx => rows.client.spec.tsx} | 0 .../tests/{tree.spec.ts => tree.client.spec.ts} | 0 ...r.spec.tsx => workspace-browser.client.spec.tsx} | 0 ...er.spec.tsx => workspace-picker.client.spec.tsx} | 0 .../tests/{bind.spec.tsx => bind.client.spec.tsx} | 0 ...c.tsx => scoped-slots-real-core.client.spec.tsx} | 0 ...-slots.spec.tsx => scoped-slots.client.spec.tsx} | 0 ...er.spec.tsx => session-provider.client.spec.tsx} | 0 ...spec.tsx => stale-authorization.client.spec.tsx} | 0 ...e-invoke.spec.tsx => use-invoke.client.spec.tsx} | 0 ...tion.spec.tsx => use-projection.client.spec.tsx} | 0 .../{app-root.spec.tsx => app-root.client.spec.tsx} | 0 ...app-shell.spec.tsx => app-shell.client.spec.tsx} | 0 .../web/tests/{app.spec.tsx => app.client.spec.tsx} | 0 ...se-styles.spec.ts => base-styles.client.spec.ts} | 0 ...itle.spec.tsx => document-title.client.spec.tsx} | 0 scripts/rescope-vendor.ts | 10 +++++----- tsconfig.client.json | 9 ++++++--- tsconfig.host.json | 11 ++++++++++- 246 files changed, 47 insertions(+), 35 deletions(-) rename packages/client/connection/tests/{api-helpers.spec.ts => api-helpers.client.spec.ts} (100%) rename packages/client/connection/tests/{api-request-trust.spec.ts => api-request-trust.host.spec.ts} (100%) rename packages/client/connection/tests/{client-apply.spec.ts => client-apply.client.spec.ts} (100%) rename packages/client/connection/tests/{connection.spec.ts => connection.client.spec.ts} (99%) rename packages/client/connection/tests/{fake-api.ts => fake-api.client.ts} (100%) rename packages/client/connection/tests/{fixture-commands.spec.ts => fixture-commands.client.spec.ts} (100%) rename packages/client/connection/tests/{fixture.spec.ts => fixture.client.spec.ts} (100%) rename packages/client/connection/tests/{http-bridge.spec.ts => http-bridge.host.spec.ts} (100%) rename packages/client/connection/tests/{loopback-hostname.spec.ts => loopback-hostname.client.spec.ts} (100%) rename packages/client/connection/tests/{node-half.spec.ts => node-half.host.spec.ts} (100%) rename packages/client/connection/tests/{websocket-downlink.spec.ts => websocket-downlink.host.spec.ts} (100%) rename packages/client/hmr/tests/{node-half.spec.ts => node-half.client.spec.ts} (100%) rename packages/client/locale/tests/{apply.spec.ts => apply.client.spec.ts} (100%) rename packages/client/locale/tests/{host.spec.ts => host.client.spec.ts} (100%) rename packages/client/locale/tests/{invariant.spec.ts => invariant.client.spec.ts} (100%) rename packages/client/locale/tests/{language-row.spec.tsx => language-row.client.spec.tsx} (100%) rename packages/client/locale/tests/{locale.spec.ts => locale.client.spec.ts} (100%) rename packages/client/locale/tests/{settings-store.spec.ts => settings-store.client.spec.ts} (100%) rename packages/client/modules/tests/{loader.spec.ts => loader.client.spec.ts} (100%) rename packages/client/modules/tests/{node-half.spec.ts => node-half.client.spec.ts} (100%) rename packages/client/runtime/tests/{client-apply.spec.ts => client-apply.client.spec.ts} (98%) rename packages/client/runtime/tests/{context-provenance.spec.ts => context-provenance.client.spec.ts} (100%) rename packages/client/runtime/tests/{conversation-assembler.spec.ts => conversation-assembler.client.spec.ts} (100%) rename packages/client/runtime/tests/{conversation-registry.spec.ts => conversation-registry.client.spec.ts} (98%) rename packages/client/runtime/tests/{conversation.spec.ts => conversation.client.spec.ts} (100%) rename packages/client/runtime/tests/{event-script.ts => event-script.client.ts} (100%) rename packages/client/runtime/tests/{fake-api.ts => fake-api.client.ts} (100%) rename packages/client/runtime/tests/{invariant.spec.ts => invariant.client.spec.ts} (100%) rename packages/client/runtime/tests/{lineage.spec.ts => lineage.client.spec.ts} (100%) rename packages/client/runtime/tests/{manager.spec.ts => manager.client.spec.ts} (99%) rename packages/client/runtime/tests/{node-half.spec.ts => node-half.client.spec.ts} (100%) rename packages/client/runtime/tests/{notifier.spec.ts => notifier.client.spec.ts} (100%) rename packages/client/runtime/tests/{partial.spec.ts => partial.client.spec.ts} (100%) rename packages/client/runtime/tests/{projection-store.spec.ts => projection-store.client.spec.ts} (98%) rename packages/client/runtime/tests/{queue-store.spec.ts => queue-store.client.spec.ts} (99%) rename packages/client/runtime/tests/{scope.spec.ts => scope.client.spec.ts} (100%) rename packages/client/runtime/tests/{session.spec.ts => session.client.spec.ts} (99%) rename packages/client/runtime/tests/{sessions-service.spec.ts => sessions-service.client.spec.ts} (99%) rename packages/client/runtime/tests/{slots-service.spec.ts => slots-service.client.spec.ts} (100%) rename packages/client/runtime/tests/{store.spec.ts => store.client.spec.ts} (100%) rename packages/client/runtime/tests/{subagent-lineage.spec.ts => subagent-lineage.client.spec.ts} (100%) rename packages/client/runtime/tests/{time-zone.spec.ts => time-zone.client.spec.ts} (100%) rename packages/client/runtime/tests/{tool-call-tree.spec.ts => tool-call-tree.client.spec.ts} (100%) rename packages/client/runtime/tests/{wire-events.spec.ts => wire-events.client.spec.ts} (98%) rename packages/client/runtime/tests/{workspaces-service.spec.ts => workspaces-service.client.spec.ts} (99%) rename packages/client/schema-form/tests/{invariant.spec.ts => invariant.client.spec.ts} (100%) rename packages/client/schema-form/tests/{model.spec.ts => model.client.spec.ts} (100%) rename packages/client/test-runtime/tests/__snapshots__/{runtime.spec.tsx.snap => runtime.client.spec.tsx.snap} (100%) rename packages/client/test-runtime/tests/{invariant.spec.ts => invariant.client.spec.ts} (100%) rename packages/client/test-runtime/tests/{remote.spec.ts => remote.client.spec.ts} (100%) rename packages/client/test-runtime/tests/{runtime.spec.tsx => runtime.client.spec.tsx} (100%) rename packages/client/ui-agent-preset/tests/{apply.spec.ts => apply.client.spec.ts} (100%) rename packages/client/ui-agent-preset/tests/{components.spec.tsx => components.client.spec.tsx} (100%) rename packages/client/ui-agent-preset/tests/{invariant.spec.ts => invariant.client.spec.ts} (100%) rename packages/client/ui-agent-preset/tests/{locales.spec.ts => locales.client.spec.ts} (100%) rename packages/client/ui-agent-preset/tests/{section-store.spec.ts => section-store.client.spec.ts} (100%) rename packages/client/ui-agent-preset/tests/{section.spec.tsx => section.client.spec.tsx} (100%) rename packages/client/ui-agent-preset/tests/{settings-store.spec.ts => settings-store.client.spec.ts} (100%) rename packages/client/ui-attachment/tests/{attachment-rail.spec.tsx => attachment-rail.client.spec.tsx} (100%) rename packages/client/ui-attachment/tests/{image-lightbox.spec.tsx => image-lightbox.client.spec.tsx} (100%) rename packages/client/ui-attachment/tests/{invariant.spec.ts => invariant.client.spec.ts} (100%) rename packages/client/ui-attachment/tests/{message-image.spec.tsx => message-image.client.spec.tsx} (100%) rename packages/client/ui-command/tests/{browser-plugin.spec.ts => browser-plugin.client.spec.ts} (100%) rename packages/client/ui-command/tests/{directory.spec.ts => directory.client.spec.ts} (100%) rename packages/client/ui-command/tests/{popup-view.spec.tsx => popup-view.client.spec.tsx} (100%) rename packages/client/ui-command/tests/{popup.spec.ts => popup.client.spec.ts} (100%) rename packages/client/ui-command/tests/{service.spec.ts => service.client.spec.ts} (100%) rename packages/client/ui-conversation/tests/{apply-inject.spec.tsx => apply-inject.client.spec.tsx} (100%) rename packages/client/ui-conversation/tests/{assembly-surfaces.spec.tsx => assembly-surfaces.client.spec.tsx} (100%) rename packages/client/ui-conversation/tests/{chat-apply.spec.tsx => chat-apply.client.spec.tsx} (100%) rename packages/client/ui-conversation/tests/{chat-branch-tails.spec.tsx => chat-branch-tails.client.spec.tsx} (99%) rename packages/client/ui-conversation/tests/{chat-snapshot-fixture.ts => chat-snapshot-fixture.client.ts} (100%) rename packages/client/ui-conversation/tests/{chat-stats.spec.tsx => chat-stats.client.spec.tsx} (99%) rename packages/client/ui-conversation/tests/{chat-store.spec.ts => chat-store.client.spec.ts} (100%) rename packages/client/ui-conversation/tests/{chat-view.spec.tsx => chat-view.client.spec.tsx} (99%) rename packages/client/ui-conversation/tests/{context-meter.spec.tsx => context-meter.client.spec.tsx} (100%) rename packages/client/ui-conversation/tests/{conversation-node-definitions.spec.ts => conversation-node-definitions.client.spec.ts} (100%) rename packages/client/ui-conversation/tests/{coverage-tails.spec.tsx => coverage-tails.client.spec.tsx} (100%) rename packages/client/ui-conversation/tests/{enter-behavior-row.spec.tsx => enter-behavior-row.client.spec.tsx} (100%) rename packages/client/ui-conversation/tests/{gate-branch-tails.spec.tsx => gate-branch-tails.client.spec.tsx} (99%) rename packages/client/ui-conversation/tests/{host.spec.ts => host.client.spec.ts} (100%) rename packages/client/ui-conversation/tests/{image-labels.spec.tsx => image-labels.client.spec.tsx} (100%) rename packages/client/ui-conversation/tests/{input-bar.spec.tsx => input-bar.client.spec.tsx} (100%) rename packages/client/ui-conversation/tests/{input-machine.spec.ts => input-machine.client.spec.ts} (100%) rename packages/client/ui-conversation/tests/{input-matrix.spec.tsx => input-matrix.client.spec.tsx} (100%) rename packages/client/ui-conversation/tests/{input-scenarios.spec.tsx => input-scenarios.client.spec.tsx} (99%) rename packages/client/ui-conversation/tests/{queue-dock.spec.tsx => queue-dock.client.spec.tsx} (100%) rename packages/client/ui-conversation/tests/{reasoning-row.spec.tsx => reasoning-row.client.spec.tsx} (100%) rename packages/client/ui-conversation/tests/{selection-survival.spec.tsx => selection-survival.client.spec.tsx} (100%) rename packages/client/ui-conversation/tests/{service-orchestration.spec.ts => service-orchestration.client.spec.ts} (100%) rename packages/client/ui-conversation/tests/{skeleton.spec.tsx => skeleton.client.spec.tsx} (100%) rename packages/client/ui-conversation/tests/{submission-policy.spec.ts => submission-policy.client.spec.ts} (100%) rename packages/client/ui-conversation/tests/{todo-panel.spec.tsx => todo-panel.client.spec.tsx} (100%) rename packages/client/ui-conversation/tests/{turn-metrics.spec.ts => turn-metrics.client.spec.ts} (100%) rename packages/client/ui-conversation/tests/{views-type-chain.spec.tsx => views-type-chain.client.spec.tsx} (100%) rename packages/client/ui-deliverables/tests/{produced-files.spec.tsx => produced-files.client.spec.tsx} (100%) rename packages/client/ui-directory-picker-native/tests/{client-flow.spec.tsx => client-flow.client.spec.tsx} (100%) rename packages/client/ui-directory-picker/tests/{client-flow.spec.tsx => client-flow.client.spec.tsx} (100%) rename packages/client/ui-directory-picker/tests/{directory-browser.spec.tsx => directory-browser.client.spec.tsx} (100%) rename packages/client/ui-goal/tests/{browser-plugin.spec.tsx => browser-plugin.client.spec.tsx} (100%) rename packages/client/ui-goal/tests/{goal-command-input.spec.tsx => goal-command-input.client.spec.tsx} (100%) rename packages/client/ui-goal/tests/{goalbar.spec.tsx => goalbar.client.spec.tsx} (100%) rename packages/client/ui-layout/tests/{app-frame.spec.tsx => app-frame.client.spec.tsx} (100%) rename packages/client/ui-layout/tests/{apply.spec.ts => apply.client.spec.ts} (100%) rename packages/client/ui-layout/tests/{columns.spec.ts => columns.client.spec.ts} (100%) rename packages/client/ui-layout/tests/{layout-store.spec.ts => layout-store.client.spec.ts} (100%) rename packages/client/ui-layout/tests/{service.spec.ts => service.client.spec.ts} (100%) rename packages/client/ui-layout/tests/{theme-presenter.spec.ts => theme-presenter.client.spec.ts} (100%) rename packages/client/ui-model/tests/{browser-plugin.spec.ts => browser-plugin.client.spec.ts} (100%) rename packages/client/ui-model/tests/{model-select.spec.tsx => model-select.client.spec.tsx} (100%) rename packages/client/ui-models/tests/{apply.spec.ts => apply.client.spec.ts} (100%) rename packages/client/ui-models/tests/{components.spec.tsx => components.client.spec.tsx} (100%) rename packages/client/ui-models/tests/{invariant.spec.ts => invariant.client.spec.ts} (100%) rename packages/client/ui-models/tests/{onboarding-dialog.spec.tsx => onboarding-dialog.client.spec.tsx} (100%) rename packages/client/ui-models/tests/{provider-form.spec.tsx => provider-form.client.spec.tsx} (100%) rename packages/client/ui-models/tests/{readiness.spec.ts => readiness.client.spec.ts} (100%) rename packages/client/ui-models/tests/{store.spec.ts => store.client.spec.ts} (100%) rename packages/client/ui-models/tests/{styles.spec.ts => styles.client.spec.ts} (100%) rename packages/client/ui-permission/tests/{browser-plugin.spec.ts => browser-plugin.client.spec.ts} (100%) rename packages/client/ui-permission/tests/{permission-row.spec.tsx => permission-row.client.spec.tsx} (100%) rename packages/client/ui-permission/tests/{settings-store.spec.ts => settings-store.client.spec.ts} (100%) rename packages/client/ui-plan/tests/{browser-plugin.spec.ts => browser-plugin.client.spec.ts} (100%) rename packages/client/ui-plan/tests/{plan-mode-control.spec.tsx => plan-mode-control.client.spec.tsx} (100%) rename packages/client/ui-plugin-config/tests/{apply.spec.ts => apply.client.spec.ts} (100%) rename packages/client/ui-plugin-config/tests/{fields.spec.tsx => fields.client.spec.tsx} (100%) rename packages/client/ui-plugin-config/tests/{invariant.spec.ts => invariant.client.spec.ts} (100%) rename packages/client/ui-plugin-config/tests/{section.spec.tsx => section.client.spec.tsx} (100%) rename packages/client/ui-plugin-config/tests/{stores.spec.ts => stores.client.spec.ts} (100%) rename packages/client/ui-primitives/tests/{ansi.spec.ts => ansi.client.spec.ts} (100%) rename packages/client/ui-primitives/tests/{atoms.spec.tsx => atoms.client.spec.tsx} (100%) rename packages/client/ui-primitives/tests/{code-block.spec.tsx => code-block.client.spec.tsx} (100%) rename packages/client/ui-primitives/tests/{diff-block.spec.tsx => diff-block.client.spec.tsx} (100%) rename packages/client/ui-primitives/tests/{hover-card.spec.tsx => hover-card.client.spec.tsx} (100%) rename packages/client/ui-primitives/tests/{icons.spec.tsx => icons.client.spec.tsx} (100%) rename packages/client/ui-primitives/tests/{invariant.spec.ts => invariant.client.spec.ts} (100%) rename packages/client/ui-primitives/tests/{json-tree.spec.tsx => json-tree.client.spec.tsx} (100%) rename packages/client/ui-primitives/tests/{markdown-dom-parity.spec.tsx => markdown-dom-parity.client.spec.tsx} (100%) rename packages/client/ui-primitives/tests/{markdown-incremental.spec.tsx => markdown-incremental.client.spec.tsx} (100%) rename packages/client/ui-primitives/tests/{markdown-plain-text.spec.ts => markdown-plain-text.client.spec.ts} (100%) rename packages/client/ui-primitives/tests/{markdown-render-units.spec.tsx => markdown-render-units.client.spec.tsx} (100%) rename packages/client/ui-primitives/tests/{markdown.spec.tsx => markdown.client.spec.tsx} (100%) rename packages/client/ui-primitives/tests/{onboarding-surface.spec.tsx => onboarding-surface.client.spec.tsx} (100%) rename packages/client/ui-primitives/tests/{read-block.spec.tsx => read-block.client.spec.tsx} (100%) rename packages/client/ui-primitives/tests/{search-block.spec.tsx => search-block.client.spec.tsx} (100%) rename packages/client/ui-primitives/tests/{state-dot.spec.tsx => state-dot.client.spec.tsx} (100%) rename packages/client/ui-primitives/tests/{terminal-block.spec.tsx => terminal-block.client.spec.tsx} (100%) rename packages/client/ui-primitives/tests/{toast.spec.tsx => toast.client.spec.tsx} (100%) rename packages/client/ui-primitives/tests/{tooltip.spec.tsx => tooltip.client.spec.tsx} (100%) rename packages/client/ui-primitives/tests/{web-block.spec.tsx => web-block.client.spec.tsx} (100%) rename packages/client/ui-question/tests/{browser-plugin.spec.ts => browser-plugin.client.spec.ts} (100%) rename packages/client/ui-question/tests/{node-plugin.spec.ts => node-plugin.client.spec.ts} (100%) rename packages/client/ui-question/tests/{plan-review-panel.spec.tsx => plan-review-panel.client.spec.tsx} (100%) rename packages/client/ui-question/tests/{question-composer.spec.tsx => question-composer.client.spec.tsx} (100%) rename packages/client/ui-settings-general/tests/{apply.spec.ts => apply.client.spec.ts} (100%) rename packages/client/ui-settings-general/tests/{components.spec.tsx => components.client.spec.tsx} (100%) rename packages/client/ui-settings-general/tests/{host.spec.ts => host.client.spec.ts} (100%) rename packages/client/ui-settings-general/tests/{invariant.spec.ts => invariant.client.spec.ts} (100%) rename packages/client/ui-settings-general/tests/{settings-document-store.spec.ts => settings-document-store.client.spec.ts} (100%) rename packages/client/ui-settings-general/tests/{settings-root.spec.tsx => settings-root.client.spec.tsx} (100%) rename packages/client/ui-settings-general/tests/{shell.spec.ts => shell.client.spec.ts} (100%) rename packages/client/ui-settings-general/tests/{welcome-notice.spec.tsx => welcome-notice.client.spec.tsx} (100%) rename packages/client/ui-settings-general/tests/{welcome-store.spec.ts => welcome-store.client.spec.ts} (100%) rename packages/client/ui-settings/tests/{invariant.spec.ts => invariant.client.spec.ts} (100%) rename packages/client/ui-settings/tests/{plugin.spec.ts => plugin.client.spec.ts} (100%) rename packages/client/ui-settings/tests/{settings-scope.spec.ts => settings-scope.client.spec.ts} (100%) rename packages/client/ui-sidebar/tests/__snapshots__/{sidebar-snapshot.spec.tsx.snap => sidebar-snapshot.client.spec.tsx.snap} (100%) rename packages/client/ui-sidebar/tests/{apply.spec.tsx => apply.client.spec.tsx} (100%) rename packages/client/ui-sidebar/tests/{invariant.spec.ts => invariant.client.spec.ts} (100%) rename packages/client/ui-sidebar/tests/{pointer-scrollbars.spec.tsx => pointer-scrollbars.client.spec.tsx} (100%) rename packages/client/ui-sidebar/tests/{scrollbar-quiet-styles.spec.ts => scrollbar-quiet-styles.client.spec.ts} (100%) rename packages/client/ui-sidebar/tests/{sidebar-root.spec.tsx => sidebar-root.client.spec.tsx} (100%) rename packages/client/ui-sidebar/tests/{sidebar-snapshot.spec.tsx => sidebar-snapshot.client.spec.tsx} (100%) rename packages/client/ui-sidebar/tests/{sidebar-styles.spec.ts => sidebar-styles.client.spec.ts} (100%) rename packages/client/ui-skill/tests/{browser-plugin.spec.ts => browser-plugin.client.spec.ts} (100%) rename packages/client/ui-skill/tests/{skill-row.spec.tsx => skill-row.client.spec.tsx} (100%) rename packages/client/ui-slash/tests/{apply.spec.ts => apply.client.spec.ts} (100%) rename packages/client/ui-slash/tests/{core-detect.spec.ts => core-detect.client.spec.ts} (100%) rename packages/client/ui-slash/tests/{core-menu.spec.ts => core-menu.client.spec.ts} (100%) rename packages/client/ui-slash/tests/{menu-view.spec.tsx => menu-view.client.spec.tsx} (100%) rename packages/client/ui-slash/tests/{service.spec.ts => service.client.spec.ts} (100%) rename packages/client/ui-slots/tests/{core.spec.ts => core.client.spec.ts} (100%) rename packages/client/ui-slots/tests/{dynamic-keys.spec.ts => dynamic-keys.client.spec.ts} (100%) rename packages/client/ui-slots/tests/{invariant.spec.ts => invariant.client.spec.ts} (100%) rename packages/client/ui-slots/tests/{type-chain.spec.tsx => type-chain.client.spec.tsx} (100%) rename packages/client/ui-subagent/tests/{browser-plugin.spec.ts => browser-plugin.client.spec.ts} (100%) rename packages/client/ui-subagent/tests/{conversation-ui.spec.tsx => conversation-ui.client.spec.tsx} (100%) rename packages/client/ui-task/tests/{browser-plugin.spec.ts => browser-plugin.client.spec.ts} (100%) rename packages/client/ui-task/tests/{task-list-action.spec.tsx => task-list-action.client.spec.tsx} (100%) rename packages/client/ui-theme/tests/{appearance-row.spec.tsx => appearance-row.client.spec.tsx} (100%) rename packages/client/ui-theme/tests/{apply.spec.ts => apply.client.spec.ts} (100%) rename packages/client/ui-theme/tests/{boot-theme.spec.ts => boot-theme.client.spec.ts} (100%) rename packages/client/ui-theme/tests/{host.spec.ts => host.client.spec.ts} (100%) rename packages/client/ui-theme/tests/{invariant.spec.ts => invariant.client.spec.ts} (100%) rename packages/client/ui-theme/tests/{scrollbar-styles.spec.ts => scrollbar-styles.client.spec.ts} (100%) rename packages/client/ui-theme/tests/{settings-store.spec.ts => settings-store.client.spec.ts} (100%) rename packages/client/ui-theme/tests/{theme.spec.ts => theme.client.spec.ts} (100%) rename packages/client/ui-tool/tests/{ask-question-row.spec.tsx => ask-question-row.client.spec.tsx} (100%) rename packages/client/ui-tool/tests/{assembly-surfaces.spec.tsx => assembly-surfaces.client.spec.tsx} (99%) rename packages/client/ui-tool/tests/{chat-code-subcalls.spec.tsx => chat-code-subcalls.client.spec.tsx} (99%) rename packages/client/ui-tool/tests/{coverage-tails.spec.tsx => coverage-tails.client.spec.tsx} (100%) rename packages/client/ui-tool/tests/{diff-card.spec.tsx => diff-card.client.spec.tsx} (99%) rename packages/client/ui-tool/tests/{read-card.spec.tsx => read-card.client.spec.tsx} (99%) rename packages/client/ui-tool/tests/{search-card.spec.tsx => search-card.client.spec.tsx} (99%) rename packages/client/ui-tool/tests/{terminal-card.spec.tsx => terminal-card.client.spec.tsx} (99%) rename packages/client/ui-tool/tests/{todo-row.spec.tsx => todo-row.client.spec.tsx} (100%) rename packages/client/ui-tool/tests/{tool-call-tree.spec.tsx => tool-call-tree.client.spec.tsx} (100%) rename packages/client/ui-tool/tests/{tool-details-render.tsx => tool-details-render.client.tsx} (100%) rename packages/client/ui-tool/tests/{tool-row-styles.spec.ts => tool-row-styles.client.spec.ts} (100%) rename packages/client/ui-tool/tests/{tool-row.spec.tsx => tool-row.client.spec.tsx} (100%) rename packages/client/ui-tool/tests/{toolview-slot.spec.tsx => toolview-slot.client.spec.tsx} (99%) rename packages/client/ui-tool/tests/{toolview-type-chain.spec.tsx => toolview-type-chain.client.spec.tsx} (100%) rename packages/client/ui-tool/tests/{web-card.spec.tsx => web-card.client.spec.tsx} (99%) rename packages/client/ui-trajectory/tests/{cell.spec.tsx => cell.client.spec.tsx} (100%) rename packages/client/ui-trajectory/tests/{client-bundle.spec.ts => client-bundle.client.spec.ts} (100%) rename packages/client/ui-trajectory/tests/{conversation-definitions.spec.ts => conversation-definitions.client.spec.ts} (100%) rename packages/client/ui-trajectory/tests/{export-log.spec.ts => export-log.client.spec.ts} (100%) rename packages/client/ui-trajectory/tests/{layout.spec.tsx => layout.client.spec.tsx} (100%) rename packages/client/ui-trajectory/tests/{snapshot-builder.spec.ts => snapshot-builder.client.spec.ts} (100%) rename packages/client/ui-trajectory/tests/{table.spec.tsx => table.client.spec.tsx} (100%) rename packages/client/ui-trajectory/tests/{toolbar.spec.tsx => toolbar.client.spec.tsx} (100%) rename packages/client/ui-trajectory/tests/{views.spec.tsx => views.client.spec.tsx} (100%) rename packages/client/ui-trajectory/tests/{virtual-rows.spec.ts => virtual-rows.client.spec.ts} (100%) rename packages/client/ui-workflow-run/tests/{workflow-run.spec.tsx => workflow-run.client.spec.tsx} (100%) rename packages/client/ui-workspace/tests/{apply.spec.ts => apply.client.spec.ts} (100%) rename packages/client/ui-workspace/tests/{browser-styles.spec.ts => browser-styles.client.spec.ts} (100%) rename packages/client/ui-workspace/tests/{invariant.spec.ts => invariant.client.spec.ts} (100%) rename packages/client/ui-workspace/tests/{rename-assembly.spec.tsx => rename-assembly.client.spec.tsx} (100%) rename packages/client/ui-workspace/tests/{rows.spec.tsx => rows.client.spec.tsx} (100%) rename packages/client/ui-workspace/tests/{tree.spec.ts => tree.client.spec.ts} (100%) rename packages/client/ui-workspace/tests/{workspace-browser.spec.tsx => workspace-browser.client.spec.tsx} (100%) rename packages/client/ui-workspace/tests/{workspace-picker.spec.tsx => workspace-picker.client.spec.tsx} (100%) rename packages/client/web-react/tests/{bind.spec.tsx => bind.client.spec.tsx} (100%) rename packages/client/web-react/tests/{scoped-slots-real-core.spec.tsx => scoped-slots-real-core.client.spec.tsx} (100%) rename packages/client/web-react/tests/{scoped-slots.spec.tsx => scoped-slots.client.spec.tsx} (100%) rename packages/client/web-react/tests/{session-provider.spec.tsx => session-provider.client.spec.tsx} (100%) rename packages/client/web-react/tests/{stale-authorization.spec.tsx => stale-authorization.client.spec.tsx} (100%) rename packages/client/web-react/tests/{use-invoke.spec.tsx => use-invoke.client.spec.tsx} (100%) rename packages/client/web-react/tests/{use-projection.spec.tsx => use-projection.client.spec.tsx} (100%) rename packages/client/web/tests/{app-root.spec.tsx => app-root.client.spec.tsx} (100%) rename packages/client/web/tests/{app-shell.spec.tsx => app-shell.client.spec.tsx} (100%) rename packages/client/web/tests/{app.spec.tsx => app.client.spec.tsx} (100%) rename packages/client/web/tests/{base-styles.spec.ts => base-styles.client.spec.ts} (100%) rename packages/client/web/tests/{document-title.spec.tsx => document-title.client.spec.tsx} (100%) diff --git a/packages/client/connection/tests/api-helpers.spec.ts b/packages/client/connection/tests/api-helpers.client.spec.ts similarity index 100% rename from packages/client/connection/tests/api-helpers.spec.ts rename to packages/client/connection/tests/api-helpers.client.spec.ts diff --git a/packages/client/connection/tests/api-request-trust.spec.ts b/packages/client/connection/tests/api-request-trust.host.spec.ts similarity index 100% rename from packages/client/connection/tests/api-request-trust.spec.ts rename to packages/client/connection/tests/api-request-trust.host.spec.ts diff --git a/packages/client/connection/tests/client-apply.spec.ts b/packages/client/connection/tests/client-apply.client.spec.ts similarity index 100% rename from packages/client/connection/tests/client-apply.spec.ts rename to packages/client/connection/tests/client-apply.client.spec.ts diff --git a/packages/client/connection/tests/connection.spec.ts b/packages/client/connection/tests/connection.client.spec.ts similarity index 99% rename from packages/client/connection/tests/connection.spec.ts rename to packages/client/connection/tests/connection.client.spec.ts index 3a39122365..e5290c0dbb 100644 --- a/packages/client/connection/tests/connection.spec.ts +++ b/packages/client/connection/tests/connection.client.spec.ts @@ -10,7 +10,7 @@ import { describe, expect, it, vi } from 'vitest' import type { SessionId } from '../src/client/api.ts' import type { ConnectionState } from '../src/client/connection.ts' import { ConnectionController } from '../src/client/connection.ts' -import { FakeApiClient, deferred, ok } from './fake-api.ts' +import { FakeApiClient, deferred, ok } from './fake-api.client.ts' const SID = 'fk-c1' as SessionId const FAST = { backoffBaseMs: 10, backoffFactor: 1, backoffMaxMs: 10, streamOpenTimeoutMs: 500 } diff --git a/packages/client/connection/tests/fake-api.ts b/packages/client/connection/tests/fake-api.client.ts similarity index 100% rename from packages/client/connection/tests/fake-api.ts rename to packages/client/connection/tests/fake-api.client.ts diff --git a/packages/client/connection/tests/fixture-commands.spec.ts b/packages/client/connection/tests/fixture-commands.client.spec.ts similarity index 100% rename from packages/client/connection/tests/fixture-commands.spec.ts rename to packages/client/connection/tests/fixture-commands.client.spec.ts diff --git a/packages/client/connection/tests/fixture.spec.ts b/packages/client/connection/tests/fixture.client.spec.ts similarity index 100% rename from packages/client/connection/tests/fixture.spec.ts rename to packages/client/connection/tests/fixture.client.spec.ts diff --git a/packages/client/connection/tests/http-bridge.spec.ts b/packages/client/connection/tests/http-bridge.host.spec.ts similarity index 100% rename from packages/client/connection/tests/http-bridge.spec.ts rename to packages/client/connection/tests/http-bridge.host.spec.ts diff --git a/packages/client/connection/tests/loopback-hostname.spec.ts b/packages/client/connection/tests/loopback-hostname.client.spec.ts similarity index 100% rename from packages/client/connection/tests/loopback-hostname.spec.ts rename to packages/client/connection/tests/loopback-hostname.client.spec.ts diff --git a/packages/client/connection/tests/node-half.spec.ts b/packages/client/connection/tests/node-half.host.spec.ts similarity index 100% rename from packages/client/connection/tests/node-half.spec.ts rename to packages/client/connection/tests/node-half.host.spec.ts diff --git a/packages/client/connection/tests/websocket-downlink.spec.ts b/packages/client/connection/tests/websocket-downlink.host.spec.ts similarity index 100% rename from packages/client/connection/tests/websocket-downlink.spec.ts rename to packages/client/connection/tests/websocket-downlink.host.spec.ts diff --git a/packages/client/hmr/tests/node-half.spec.ts b/packages/client/hmr/tests/node-half.client.spec.ts similarity index 100% rename from packages/client/hmr/tests/node-half.spec.ts rename to packages/client/hmr/tests/node-half.client.spec.ts diff --git a/packages/client/locale/tests/apply.spec.ts b/packages/client/locale/tests/apply.client.spec.ts similarity index 100% rename from packages/client/locale/tests/apply.spec.ts rename to packages/client/locale/tests/apply.client.spec.ts diff --git a/packages/client/locale/tests/host.spec.ts b/packages/client/locale/tests/host.client.spec.ts similarity index 100% rename from packages/client/locale/tests/host.spec.ts rename to packages/client/locale/tests/host.client.spec.ts diff --git a/packages/client/locale/tests/invariant.spec.ts b/packages/client/locale/tests/invariant.client.spec.ts similarity index 100% rename from packages/client/locale/tests/invariant.spec.ts rename to packages/client/locale/tests/invariant.client.spec.ts diff --git a/packages/client/locale/tests/language-row.spec.tsx b/packages/client/locale/tests/language-row.client.spec.tsx similarity index 100% rename from packages/client/locale/tests/language-row.spec.tsx rename to packages/client/locale/tests/language-row.client.spec.tsx diff --git a/packages/client/locale/tests/locale.spec.ts b/packages/client/locale/tests/locale.client.spec.ts similarity index 100% rename from packages/client/locale/tests/locale.spec.ts rename to packages/client/locale/tests/locale.client.spec.ts diff --git a/packages/client/locale/tests/settings-store.spec.ts b/packages/client/locale/tests/settings-store.client.spec.ts similarity index 100% rename from packages/client/locale/tests/settings-store.spec.ts rename to packages/client/locale/tests/settings-store.client.spec.ts diff --git a/packages/client/modules/tests/loader.spec.ts b/packages/client/modules/tests/loader.client.spec.ts similarity index 100% rename from packages/client/modules/tests/loader.spec.ts rename to packages/client/modules/tests/loader.client.spec.ts diff --git a/packages/client/modules/tests/node-half.spec.ts b/packages/client/modules/tests/node-half.client.spec.ts similarity index 100% rename from packages/client/modules/tests/node-half.spec.ts rename to packages/client/modules/tests/node-half.client.spec.ts diff --git a/packages/client/runtime/tests/client-apply.spec.ts b/packages/client/runtime/tests/client-apply.client.spec.ts similarity index 98% rename from packages/client/runtime/tests/client-apply.spec.ts rename to packages/client/runtime/tests/client-apply.client.spec.ts index ae1e20a45b..1d3e6d0fee 100644 --- a/packages/client/runtime/tests/client-apply.spec.ts +++ b/packages/client/runtime/tests/client-apply.client.spec.ts @@ -14,7 +14,7 @@ import type { ConversationNodeDefinition } from '../src/client/contract/conversa import { Session } from '../src/client/sessions/session.ts' import type { SessionsService } from '../src/client/sessions/service.ts' import type { WorkspacesService } from '../src/client/workspaces/service.ts' -import { FakeApiClient, fakeRemote, ok } from './fake-api.ts' +import { FakeApiClient, fakeRemote, ok } from './fake-api.client.ts' interface Bench { ctx: Context diff --git a/packages/client/runtime/tests/context-provenance.spec.ts b/packages/client/runtime/tests/context-provenance.client.spec.ts similarity index 100% rename from packages/client/runtime/tests/context-provenance.spec.ts rename to packages/client/runtime/tests/context-provenance.client.spec.ts diff --git a/packages/client/runtime/tests/conversation-assembler.spec.ts b/packages/client/runtime/tests/conversation-assembler.client.spec.ts similarity index 100% rename from packages/client/runtime/tests/conversation-assembler.spec.ts rename to packages/client/runtime/tests/conversation-assembler.client.spec.ts diff --git a/packages/client/runtime/tests/conversation-registry.spec.ts b/packages/client/runtime/tests/conversation-registry.client.spec.ts similarity index 98% rename from packages/client/runtime/tests/conversation-registry.spec.ts rename to packages/client/runtime/tests/conversation-registry.client.spec.ts index 79d63f3226..dbd752f4a9 100644 --- a/packages/client/runtime/tests/conversation-registry.spec.ts +++ b/packages/client/runtime/tests/conversation-registry.client.spec.ts @@ -8,7 +8,7 @@ import type { } from '../src/client/contract/conversation.ts' import { Session } from '../src/client/sessions/session.ts' import { SessionsService } from '../src/client/sessions/service.ts' -import { FakeApiClient, fakeRemote, ok } from './fake-api.ts' +import { FakeApiClient, fakeRemote, ok } from './fake-api.client.ts' function eventDefinition(kind: string): ConversationNodeDefinition { return { diff --git a/packages/client/runtime/tests/conversation.spec.ts b/packages/client/runtime/tests/conversation.client.spec.ts similarity index 100% rename from packages/client/runtime/tests/conversation.spec.ts rename to packages/client/runtime/tests/conversation.client.spec.ts diff --git a/packages/client/runtime/tests/event-script.ts b/packages/client/runtime/tests/event-script.client.ts similarity index 100% rename from packages/client/runtime/tests/event-script.ts rename to packages/client/runtime/tests/event-script.client.ts diff --git a/packages/client/runtime/tests/fake-api.ts b/packages/client/runtime/tests/fake-api.client.ts similarity index 100% rename from packages/client/runtime/tests/fake-api.ts rename to packages/client/runtime/tests/fake-api.client.ts diff --git a/packages/client/runtime/tests/invariant.spec.ts b/packages/client/runtime/tests/invariant.client.spec.ts similarity index 100% rename from packages/client/runtime/tests/invariant.spec.ts rename to packages/client/runtime/tests/invariant.client.spec.ts diff --git a/packages/client/runtime/tests/lineage.spec.ts b/packages/client/runtime/tests/lineage.client.spec.ts similarity index 100% rename from packages/client/runtime/tests/lineage.spec.ts rename to packages/client/runtime/tests/lineage.client.spec.ts diff --git a/packages/client/runtime/tests/manager.spec.ts b/packages/client/runtime/tests/manager.client.spec.ts similarity index 99% rename from packages/client/runtime/tests/manager.spec.ts rename to packages/client/runtime/tests/manager.client.spec.ts index dec157341a..02e00b0326 100644 --- a/packages/client/runtime/tests/manager.spec.ts +++ b/packages/client/runtime/tests/manager.client.spec.ts @@ -6,8 +6,8 @@ import { describe, expect, it, vi } from 'vitest' import type { SessionId } from '@deepseek-ai/dsh-api-remotes/client' import { SessionManager } from '../src/client/sessions/manager.ts' -import { FakeApiClient, deferred, err, fakeRemote, ok } from './fake-api.ts' -import { entries, plainTurn } from './event-script.ts' +import { FakeApiClient, deferred, err, fakeRemote, ok } from './fake-api.client.ts' +import { entries, plainTurn } from './event-script.client.ts' const S1 = 'fk-m1' as SessionId const S2 = 'fk-m2' as SessionId diff --git a/packages/client/runtime/tests/node-half.spec.ts b/packages/client/runtime/tests/node-half.client.spec.ts similarity index 100% rename from packages/client/runtime/tests/node-half.spec.ts rename to packages/client/runtime/tests/node-half.client.spec.ts diff --git a/packages/client/runtime/tests/notifier.spec.ts b/packages/client/runtime/tests/notifier.client.spec.ts similarity index 100% rename from packages/client/runtime/tests/notifier.spec.ts rename to packages/client/runtime/tests/notifier.client.spec.ts diff --git a/packages/client/runtime/tests/partial.spec.ts b/packages/client/runtime/tests/partial.client.spec.ts similarity index 100% rename from packages/client/runtime/tests/partial.spec.ts rename to packages/client/runtime/tests/partial.client.spec.ts diff --git a/packages/client/runtime/tests/projection-store.spec.ts b/packages/client/runtime/tests/projection-store.client.spec.ts similarity index 98% rename from packages/client/runtime/tests/projection-store.spec.ts rename to packages/client/runtime/tests/projection-store.client.spec.ts index 45b75e91a1..5ef2c41194 100644 --- a/packages/client/runtime/tests/projection-store.spec.ts +++ b/packages/client/runtime/tests/projection-store.client.spec.ts @@ -12,8 +12,8 @@ import type { SessionId } from '@deepseek-ai/dsh-api-remotes/client' import { ProjectionValueStore } from '../src/client/sessions/projection-store.ts' import { Session } from '../src/client/sessions/session.ts' import { SessionManager } from '../src/client/sessions/manager.ts' -import { FakeApiClient, fakeRemote, ok } from './fake-api.ts' -import { entries, plainTurn } from './event-script.ts' +import { FakeApiClient, fakeRemote, ok } from './fake-api.client.ts' +import { entries, plainTurn } from './event-script.client.ts' // Test-domain keys merged into the projection map (the Service Definition package's // pure-type outlet), the same way domain host plugins merge theirs. diff --git a/packages/client/runtime/tests/queue-store.spec.ts b/packages/client/runtime/tests/queue-store.client.spec.ts similarity index 99% rename from packages/client/runtime/tests/queue-store.spec.ts rename to packages/client/runtime/tests/queue-store.client.spec.ts index d93b462d25..da109e7da7 100644 --- a/packages/client/runtime/tests/queue-store.spec.ts +++ b/packages/client/runtime/tests/queue-store.client.spec.ts @@ -10,7 +10,7 @@ import type { SessionEvent } from '@deepseek-ai/dsh-session/types' import type { MessageId, MuxFrame, RpcId, SessionId } from '@deepseek-ai/dsh-api-remotes/client' import { Session } from '../src/client/sessions/session.ts' import { SessionManager } from '../src/client/sessions/manager.ts' -import { FakeApiClient, fakeRemote } from './fake-api.ts' +import { FakeApiClient, fakeRemote } from './fake-api.client.ts' const SID = 'fk-q1' as SessionId const text = (value: string): ContentBlock[] => [{ type: 'text', text: value }] diff --git a/packages/client/runtime/tests/scope.spec.ts b/packages/client/runtime/tests/scope.client.spec.ts similarity index 100% rename from packages/client/runtime/tests/scope.spec.ts rename to packages/client/runtime/tests/scope.client.spec.ts diff --git a/packages/client/runtime/tests/session.spec.ts b/packages/client/runtime/tests/session.client.spec.ts similarity index 99% rename from packages/client/runtime/tests/session.spec.ts rename to packages/client/runtime/tests/session.client.spec.ts index 43a78cffb2..19e80dfd5b 100644 --- a/packages/client/runtime/tests/session.spec.ts +++ b/packages/client/runtime/tests/session.client.spec.ts @@ -17,8 +17,8 @@ import type { ConversationRuntime, ConversationSnapshot, ConversationTimelineSnapshot, ConversationViewDefinition, } from '../src/client/index.ts' -import { FakeApiClient, deferred, err, fakeRemote, ok } from './fake-api.ts' -import { entries, ev, plainTurn } from './event-script.ts' +import { FakeApiClient, deferred, err, fakeRemote, ok } from './fake-api.client.ts' +import { entries, ev, plainTurn } from './event-script.client.ts' const SID = 'fk-s1' as SessionId const PARENT = 'fk-parent' as SessionId diff --git a/packages/client/runtime/tests/sessions-service.spec.ts b/packages/client/runtime/tests/sessions-service.client.spec.ts similarity index 99% rename from packages/client/runtime/tests/sessions-service.spec.ts rename to packages/client/runtime/tests/sessions-service.client.spec.ts index 956be93581..bf4710d102 100644 --- a/packages/client/runtime/tests/sessions-service.spec.ts +++ b/packages/client/runtime/tests/sessions-service.client.spec.ts @@ -10,7 +10,7 @@ import { Context } from '@deepseek-ai/cordis' import { afterEach, describe, expect, it, vi } from 'vitest' import type { SessionId } from '@deepseek-ai/dsh-api-remotes/client' import { SessionCreateError, SessionsService, scopeOf } from '../src/client/sessions/service.ts' -import { FakeApiClient, deferred, err, fakeRemote, ok } from './fake-api.ts' +import { FakeApiClient, deferred, err, fakeRemote, ok } from './fake-api.client.ts' const sid = (s: string): SessionId => s as SessionId diff --git a/packages/client/runtime/tests/slots-service.spec.ts b/packages/client/runtime/tests/slots-service.client.spec.ts similarity index 100% rename from packages/client/runtime/tests/slots-service.spec.ts rename to packages/client/runtime/tests/slots-service.client.spec.ts diff --git a/packages/client/runtime/tests/store.spec.ts b/packages/client/runtime/tests/store.client.spec.ts similarity index 100% rename from packages/client/runtime/tests/store.spec.ts rename to packages/client/runtime/tests/store.client.spec.ts diff --git a/packages/client/runtime/tests/subagent-lineage.spec.ts b/packages/client/runtime/tests/subagent-lineage.client.spec.ts similarity index 100% rename from packages/client/runtime/tests/subagent-lineage.spec.ts rename to packages/client/runtime/tests/subagent-lineage.client.spec.ts diff --git a/packages/client/runtime/tests/time-zone.spec.ts b/packages/client/runtime/tests/time-zone.client.spec.ts similarity index 100% rename from packages/client/runtime/tests/time-zone.spec.ts rename to packages/client/runtime/tests/time-zone.client.spec.ts diff --git a/packages/client/runtime/tests/tool-call-tree.spec.ts b/packages/client/runtime/tests/tool-call-tree.client.spec.ts similarity index 100% rename from packages/client/runtime/tests/tool-call-tree.spec.ts rename to packages/client/runtime/tests/tool-call-tree.client.spec.ts diff --git a/packages/client/runtime/tests/wire-events.spec.ts b/packages/client/runtime/tests/wire-events.client.spec.ts similarity index 98% rename from packages/client/runtime/tests/wire-events.spec.ts rename to packages/client/runtime/tests/wire-events.client.spec.ts index 20ff4c966d..f6798bd914 100644 --- a/packages/client/runtime/tests/wire-events.spec.ts +++ b/packages/client/runtime/tests/wire-events.client.spec.ts @@ -13,7 +13,7 @@ import TypertRegistry from '@deepseek-ai/dsh-typert-registry' // key face and per-event listener signatures. import type {} from '@deepseek-ai/dsh-api-remotes/client' import * as RuntimeClient from '../src/client/index.ts' -import { FakeApiClient, fakeRemote } from './fake-api.ts' +import { FakeApiClient, fakeRemote } from './fake-api.client.ts' /** * Compile-time face of `ctx.remote.$on`, asserted by type-checking this file diff --git a/packages/client/runtime/tests/workspaces-service.spec.ts b/packages/client/runtime/tests/workspaces-service.client.spec.ts similarity index 99% rename from packages/client/runtime/tests/workspaces-service.spec.ts rename to packages/client/runtime/tests/workspaces-service.client.spec.ts index d0adfd3a7f..02df6e60ad 100644 --- a/packages/client/runtime/tests/workspaces-service.spec.ts +++ b/packages/client/runtime/tests/workspaces-service.client.spec.ts @@ -4,7 +4,7 @@ import type { SessionId, WorkspaceId, WorkspaceView } from '@deepseek-ai/dsh-api import { SessionsService } from '../src/client/sessions/service.ts' import { WorkspaceManager } from '../src/client/workspaces/manager.ts' import { DirectoryBrowseError, WorkspaceCreateError, WorkspacesService } from '../src/client/workspaces/service.ts' -import { FakeApiClient, deferred, err, fakeRemote, ok } from './fake-api.ts' +import { FakeApiClient, deferred, err, fakeRemote, ok } from './fake-api.client.ts' const sid = (id: string): SessionId => id as SessionId const wid = (id: string): WorkspaceId => id as WorkspaceId diff --git a/packages/client/schema-form/tests/invariant.spec.ts b/packages/client/schema-form/tests/invariant.client.spec.ts similarity index 100% rename from packages/client/schema-form/tests/invariant.spec.ts rename to packages/client/schema-form/tests/invariant.client.spec.ts diff --git a/packages/client/schema-form/tests/model.spec.ts b/packages/client/schema-form/tests/model.client.spec.ts similarity index 100% rename from packages/client/schema-form/tests/model.spec.ts rename to packages/client/schema-form/tests/model.client.spec.ts diff --git a/packages/client/test-runtime/tests/__snapshots__/runtime.spec.tsx.snap b/packages/client/test-runtime/tests/__snapshots__/runtime.client.spec.tsx.snap similarity index 100% rename from packages/client/test-runtime/tests/__snapshots__/runtime.spec.tsx.snap rename to packages/client/test-runtime/tests/__snapshots__/runtime.client.spec.tsx.snap diff --git a/packages/client/test-runtime/tests/invariant.spec.ts b/packages/client/test-runtime/tests/invariant.client.spec.ts similarity index 100% rename from packages/client/test-runtime/tests/invariant.spec.ts rename to packages/client/test-runtime/tests/invariant.client.spec.ts diff --git a/packages/client/test-runtime/tests/remote.spec.ts b/packages/client/test-runtime/tests/remote.client.spec.ts similarity index 100% rename from packages/client/test-runtime/tests/remote.spec.ts rename to packages/client/test-runtime/tests/remote.client.spec.ts diff --git a/packages/client/test-runtime/tests/runtime.spec.tsx b/packages/client/test-runtime/tests/runtime.client.spec.tsx similarity index 100% rename from packages/client/test-runtime/tests/runtime.spec.tsx rename to packages/client/test-runtime/tests/runtime.client.spec.tsx diff --git a/packages/client/ui-agent-preset/tests/apply.spec.ts b/packages/client/ui-agent-preset/tests/apply.client.spec.ts similarity index 100% rename from packages/client/ui-agent-preset/tests/apply.spec.ts rename to packages/client/ui-agent-preset/tests/apply.client.spec.ts diff --git a/packages/client/ui-agent-preset/tests/components.spec.tsx b/packages/client/ui-agent-preset/tests/components.client.spec.tsx similarity index 100% rename from packages/client/ui-agent-preset/tests/components.spec.tsx rename to packages/client/ui-agent-preset/tests/components.client.spec.tsx diff --git a/packages/client/ui-agent-preset/tests/invariant.spec.ts b/packages/client/ui-agent-preset/tests/invariant.client.spec.ts similarity index 100% rename from packages/client/ui-agent-preset/tests/invariant.spec.ts rename to packages/client/ui-agent-preset/tests/invariant.client.spec.ts diff --git a/packages/client/ui-agent-preset/tests/locales.spec.ts b/packages/client/ui-agent-preset/tests/locales.client.spec.ts similarity index 100% rename from packages/client/ui-agent-preset/tests/locales.spec.ts rename to packages/client/ui-agent-preset/tests/locales.client.spec.ts diff --git a/packages/client/ui-agent-preset/tests/section-store.spec.ts b/packages/client/ui-agent-preset/tests/section-store.client.spec.ts similarity index 100% rename from packages/client/ui-agent-preset/tests/section-store.spec.ts rename to packages/client/ui-agent-preset/tests/section-store.client.spec.ts diff --git a/packages/client/ui-agent-preset/tests/section.spec.tsx b/packages/client/ui-agent-preset/tests/section.client.spec.tsx similarity index 100% rename from packages/client/ui-agent-preset/tests/section.spec.tsx rename to packages/client/ui-agent-preset/tests/section.client.spec.tsx diff --git a/packages/client/ui-agent-preset/tests/settings-store.spec.ts b/packages/client/ui-agent-preset/tests/settings-store.client.spec.ts similarity index 100% rename from packages/client/ui-agent-preset/tests/settings-store.spec.ts rename to packages/client/ui-agent-preset/tests/settings-store.client.spec.ts diff --git a/packages/client/ui-attachment/tests/attachment-rail.spec.tsx b/packages/client/ui-attachment/tests/attachment-rail.client.spec.tsx similarity index 100% rename from packages/client/ui-attachment/tests/attachment-rail.spec.tsx rename to packages/client/ui-attachment/tests/attachment-rail.client.spec.tsx diff --git a/packages/client/ui-attachment/tests/image-lightbox.spec.tsx b/packages/client/ui-attachment/tests/image-lightbox.client.spec.tsx similarity index 100% rename from packages/client/ui-attachment/tests/image-lightbox.spec.tsx rename to packages/client/ui-attachment/tests/image-lightbox.client.spec.tsx diff --git a/packages/client/ui-attachment/tests/invariant.spec.ts b/packages/client/ui-attachment/tests/invariant.client.spec.ts similarity index 100% rename from packages/client/ui-attachment/tests/invariant.spec.ts rename to packages/client/ui-attachment/tests/invariant.client.spec.ts diff --git a/packages/client/ui-attachment/tests/message-image.spec.tsx b/packages/client/ui-attachment/tests/message-image.client.spec.tsx similarity index 100% rename from packages/client/ui-attachment/tests/message-image.spec.tsx rename to packages/client/ui-attachment/tests/message-image.client.spec.tsx diff --git a/packages/client/ui-command/tests/browser-plugin.spec.ts b/packages/client/ui-command/tests/browser-plugin.client.spec.ts similarity index 100% rename from packages/client/ui-command/tests/browser-plugin.spec.ts rename to packages/client/ui-command/tests/browser-plugin.client.spec.ts diff --git a/packages/client/ui-command/tests/directory.spec.ts b/packages/client/ui-command/tests/directory.client.spec.ts similarity index 100% rename from packages/client/ui-command/tests/directory.spec.ts rename to packages/client/ui-command/tests/directory.client.spec.ts diff --git a/packages/client/ui-command/tests/popup-view.spec.tsx b/packages/client/ui-command/tests/popup-view.client.spec.tsx similarity index 100% rename from packages/client/ui-command/tests/popup-view.spec.tsx rename to packages/client/ui-command/tests/popup-view.client.spec.tsx diff --git a/packages/client/ui-command/tests/popup.spec.ts b/packages/client/ui-command/tests/popup.client.spec.ts similarity index 100% rename from packages/client/ui-command/tests/popup.spec.ts rename to packages/client/ui-command/tests/popup.client.spec.ts diff --git a/packages/client/ui-command/tests/service.spec.ts b/packages/client/ui-command/tests/service.client.spec.ts similarity index 100% rename from packages/client/ui-command/tests/service.spec.ts rename to packages/client/ui-command/tests/service.client.spec.ts diff --git a/packages/client/ui-conversation/tests/apply-inject.spec.tsx b/packages/client/ui-conversation/tests/apply-inject.client.spec.tsx similarity index 100% rename from packages/client/ui-conversation/tests/apply-inject.spec.tsx rename to packages/client/ui-conversation/tests/apply-inject.client.spec.tsx diff --git a/packages/client/ui-conversation/tests/assembly-surfaces.spec.tsx b/packages/client/ui-conversation/tests/assembly-surfaces.client.spec.tsx similarity index 100% rename from packages/client/ui-conversation/tests/assembly-surfaces.spec.tsx rename to packages/client/ui-conversation/tests/assembly-surfaces.client.spec.tsx diff --git a/packages/client/ui-conversation/tests/chat-apply.spec.tsx b/packages/client/ui-conversation/tests/chat-apply.client.spec.tsx similarity index 100% rename from packages/client/ui-conversation/tests/chat-apply.spec.tsx rename to packages/client/ui-conversation/tests/chat-apply.client.spec.tsx diff --git a/packages/client/ui-conversation/tests/chat-branch-tails.spec.tsx b/packages/client/ui-conversation/tests/chat-branch-tails.client.spec.tsx similarity index 99% rename from packages/client/ui-conversation/tests/chat-branch-tails.spec.tsx rename to packages/client/ui-conversation/tests/chat-branch-tails.client.spec.tsx index 5d1f027923..31897294b6 100644 --- a/packages/client/ui-conversation/tests/chat-branch-tails.spec.tsx +++ b/packages/client/ui-conversation/tests/chat-branch-tails.client.spec.tsx @@ -24,7 +24,7 @@ import { import { AssistantMarkdown } from '../src/client/chat/AssistantMarkdown.tsx' import { StatsLine, type StatsLineProps } from '../src/client/chat/StatsLine.tsx' import { zh } from '../src/client/locales.ts' -import { chatSnapshotFixture } from './chat-snapshot-fixture.ts' +import { chatSnapshotFixture } from './chat-snapshot-fixture.client.ts' /** jsdom has no ResizeObserver; StatsLine watches its row for ellipsis truncation through one. */ class ResizeObserverStub { diff --git a/packages/client/ui-conversation/tests/chat-snapshot-fixture.ts b/packages/client/ui-conversation/tests/chat-snapshot-fixture.client.ts similarity index 100% rename from packages/client/ui-conversation/tests/chat-snapshot-fixture.ts rename to packages/client/ui-conversation/tests/chat-snapshot-fixture.client.ts diff --git a/packages/client/ui-conversation/tests/chat-stats.spec.tsx b/packages/client/ui-conversation/tests/chat-stats.client.spec.tsx similarity index 99% rename from packages/client/ui-conversation/tests/chat-stats.spec.tsx rename to packages/client/ui-conversation/tests/chat-stats.client.spec.tsx index 0b2d648661..b53a1aa739 100644 --- a/packages/client/ui-conversation/tests/chat-stats.spec.tsx +++ b/packages/client/ui-conversation/tests/chat-stats.client.spec.tsx @@ -14,7 +14,7 @@ import { en as commonEn } from '@deepseek-ai/dsh-client-locale/src/locales/en.ts import { zh as commonZh } from '@deepseek-ai/dsh-client-locale/src/locales/zh.ts' import { StatsLine, contextOccupancy, deriveStats, formatDuration, formatTokens, type StatsLineProps } from '../src/client/chat/StatsLine.tsx' import { en, zh } from '../src/client/locales.ts' -import { chatSnapshotFixture } from './chat-snapshot-fixture.ts' +import { chatSnapshotFixture } from './chat-snapshot-fixture.client.ts' // Mirrors the real lookup chain (conversation namespace, then common). const t: StatsLineProps['t'] = makeTranslate(zh, commonZh) diff --git a/packages/client/ui-conversation/tests/chat-store.spec.ts b/packages/client/ui-conversation/tests/chat-store.client.spec.ts similarity index 100% rename from packages/client/ui-conversation/tests/chat-store.spec.ts rename to packages/client/ui-conversation/tests/chat-store.client.spec.ts diff --git a/packages/client/ui-conversation/tests/chat-view.spec.tsx b/packages/client/ui-conversation/tests/chat-view.client.spec.tsx similarity index 99% rename from packages/client/ui-conversation/tests/chat-view.spec.tsx rename to packages/client/ui-conversation/tests/chat-view.client.spec.tsx index f1d095ab7e..1dad50cb68 100644 --- a/packages/client/ui-conversation/tests/chat-view.spec.tsx +++ b/packages/client/ui-conversation/tests/chat-view.client.spec.tsx @@ -32,7 +32,7 @@ import { } from '../src/client/chat/MessageItem.tsx' import { TurnTailNodeView } from '../src/client/chat/TurnTailNodeView.tsx' import { formatRunDuration } from '../src/client/chat/message-chrome.ts' -import { chatSnapshotFixture } from './chat-snapshot-fixture.ts' +import { chatSnapshotFixture } from './chat-snapshot-fixture.client.ts' afterEach(() => { cleanup() diff --git a/packages/client/ui-conversation/tests/context-meter.spec.tsx b/packages/client/ui-conversation/tests/context-meter.client.spec.tsx similarity index 100% rename from packages/client/ui-conversation/tests/context-meter.spec.tsx rename to packages/client/ui-conversation/tests/context-meter.client.spec.tsx diff --git a/packages/client/ui-conversation/tests/conversation-node-definitions.spec.ts b/packages/client/ui-conversation/tests/conversation-node-definitions.client.spec.ts similarity index 100% rename from packages/client/ui-conversation/tests/conversation-node-definitions.spec.ts rename to packages/client/ui-conversation/tests/conversation-node-definitions.client.spec.ts diff --git a/packages/client/ui-conversation/tests/coverage-tails.spec.tsx b/packages/client/ui-conversation/tests/coverage-tails.client.spec.tsx similarity index 100% rename from packages/client/ui-conversation/tests/coverage-tails.spec.tsx rename to packages/client/ui-conversation/tests/coverage-tails.client.spec.tsx diff --git a/packages/client/ui-conversation/tests/enter-behavior-row.spec.tsx b/packages/client/ui-conversation/tests/enter-behavior-row.client.spec.tsx similarity index 100% rename from packages/client/ui-conversation/tests/enter-behavior-row.spec.tsx rename to packages/client/ui-conversation/tests/enter-behavior-row.client.spec.tsx diff --git a/packages/client/ui-conversation/tests/gate-branch-tails.spec.tsx b/packages/client/ui-conversation/tests/gate-branch-tails.client.spec.tsx similarity index 99% rename from packages/client/ui-conversation/tests/gate-branch-tails.spec.tsx rename to packages/client/ui-conversation/tests/gate-branch-tails.client.spec.tsx index bcda26f6a8..a2af45fbd0 100644 --- a/packages/client/ui-conversation/tests/gate-branch-tails.spec.tsx +++ b/packages/client/ui-conversation/tests/gate-branch-tails.client.spec.tsx @@ -17,7 +17,7 @@ import { AssistantMarkdown, type AssistantMarkdownProps } from '../src/client/ch import { StatsLine } from '../src/client/chat/StatsLine.tsx' import { DetailsPanel } from '../src/client/skeleton/DetailsPanel.tsx' import { zh } from '../src/client/locales.ts' -import { chatSnapshotFixture } from './chat-snapshot-fixture.ts' +import { chatSnapshotFixture } from './chat-snapshot-fixture.client.ts' // Mirrors the real lookup chain (conversation namespace, then common). const t: AssistantMarkdownProps['t'] = makeTranslate(zh, commonZh) diff --git a/packages/client/ui-conversation/tests/host.spec.ts b/packages/client/ui-conversation/tests/host.client.spec.ts similarity index 100% rename from packages/client/ui-conversation/tests/host.spec.ts rename to packages/client/ui-conversation/tests/host.client.spec.ts diff --git a/packages/client/ui-conversation/tests/image-labels.spec.tsx b/packages/client/ui-conversation/tests/image-labels.client.spec.tsx similarity index 100% rename from packages/client/ui-conversation/tests/image-labels.spec.tsx rename to packages/client/ui-conversation/tests/image-labels.client.spec.tsx diff --git a/packages/client/ui-conversation/tests/input-bar.spec.tsx b/packages/client/ui-conversation/tests/input-bar.client.spec.tsx similarity index 100% rename from packages/client/ui-conversation/tests/input-bar.spec.tsx rename to packages/client/ui-conversation/tests/input-bar.client.spec.tsx diff --git a/packages/client/ui-conversation/tests/input-machine.spec.ts b/packages/client/ui-conversation/tests/input-machine.client.spec.ts similarity index 100% rename from packages/client/ui-conversation/tests/input-machine.spec.ts rename to packages/client/ui-conversation/tests/input-machine.client.spec.ts diff --git a/packages/client/ui-conversation/tests/input-matrix.spec.tsx b/packages/client/ui-conversation/tests/input-matrix.client.spec.tsx similarity index 100% rename from packages/client/ui-conversation/tests/input-matrix.spec.tsx rename to packages/client/ui-conversation/tests/input-matrix.client.spec.tsx diff --git a/packages/client/ui-conversation/tests/input-scenarios.spec.tsx b/packages/client/ui-conversation/tests/input-scenarios.client.spec.tsx similarity index 99% rename from packages/client/ui-conversation/tests/input-scenarios.spec.tsx rename to packages/client/ui-conversation/tests/input-scenarios.client.spec.tsx index 1eabde8cb8..76bbf5ebd3 100644 --- a/packages/client/ui-conversation/tests/input-scenarios.spec.tsx +++ b/packages/client/ui-conversation/tests/input-scenarios.client.spec.tsx @@ -16,7 +16,7 @@ import { } from '@deepseek-ai/dsh-client-runtime/client' import { SlashService } from '@deepseek-ai/dsh-client-ui-slash/client' import type { ClientSessionContext, CommandClaim, PickOutcome, SubmitOutcome } from '@deepseek-ai/dsh-client-ui-slash/client' -import { FakeApiClient, fakeRemote, ok } from '../../runtime/tests/fake-api.ts' +import { FakeApiClient, fakeRemote, ok } from '../../runtime/tests/fake-api.client.ts' import { makeTranslate } from '@deepseek-ai/dsh-client-test-runtime' import { zh as commonZh } from '@deepseek-ai/dsh-client-locale/src/locales/zh.ts' import { SessionInputShell } from '../src/client/input/facade.ts' diff --git a/packages/client/ui-conversation/tests/queue-dock.spec.tsx b/packages/client/ui-conversation/tests/queue-dock.client.spec.tsx similarity index 100% rename from packages/client/ui-conversation/tests/queue-dock.spec.tsx rename to packages/client/ui-conversation/tests/queue-dock.client.spec.tsx diff --git a/packages/client/ui-conversation/tests/reasoning-row.spec.tsx b/packages/client/ui-conversation/tests/reasoning-row.client.spec.tsx similarity index 100% rename from packages/client/ui-conversation/tests/reasoning-row.spec.tsx rename to packages/client/ui-conversation/tests/reasoning-row.client.spec.tsx diff --git a/packages/client/ui-conversation/tests/selection-survival.spec.tsx b/packages/client/ui-conversation/tests/selection-survival.client.spec.tsx similarity index 100% rename from packages/client/ui-conversation/tests/selection-survival.spec.tsx rename to packages/client/ui-conversation/tests/selection-survival.client.spec.tsx diff --git a/packages/client/ui-conversation/tests/service-orchestration.spec.ts b/packages/client/ui-conversation/tests/service-orchestration.client.spec.ts similarity index 100% rename from packages/client/ui-conversation/tests/service-orchestration.spec.ts rename to packages/client/ui-conversation/tests/service-orchestration.client.spec.ts diff --git a/packages/client/ui-conversation/tests/skeleton.spec.tsx b/packages/client/ui-conversation/tests/skeleton.client.spec.tsx similarity index 100% rename from packages/client/ui-conversation/tests/skeleton.spec.tsx rename to packages/client/ui-conversation/tests/skeleton.client.spec.tsx diff --git a/packages/client/ui-conversation/tests/submission-policy.spec.ts b/packages/client/ui-conversation/tests/submission-policy.client.spec.ts similarity index 100% rename from packages/client/ui-conversation/tests/submission-policy.spec.ts rename to packages/client/ui-conversation/tests/submission-policy.client.spec.ts diff --git a/packages/client/ui-conversation/tests/todo-panel.spec.tsx b/packages/client/ui-conversation/tests/todo-panel.client.spec.tsx similarity index 100% rename from packages/client/ui-conversation/tests/todo-panel.spec.tsx rename to packages/client/ui-conversation/tests/todo-panel.client.spec.tsx diff --git a/packages/client/ui-conversation/tests/turn-metrics.spec.ts b/packages/client/ui-conversation/tests/turn-metrics.client.spec.ts similarity index 100% rename from packages/client/ui-conversation/tests/turn-metrics.spec.ts rename to packages/client/ui-conversation/tests/turn-metrics.client.spec.ts diff --git a/packages/client/ui-conversation/tests/views-type-chain.spec.tsx b/packages/client/ui-conversation/tests/views-type-chain.client.spec.tsx similarity index 100% rename from packages/client/ui-conversation/tests/views-type-chain.spec.tsx rename to packages/client/ui-conversation/tests/views-type-chain.client.spec.tsx diff --git a/packages/client/ui-deliverables/tests/produced-files.spec.tsx b/packages/client/ui-deliverables/tests/produced-files.client.spec.tsx similarity index 100% rename from packages/client/ui-deliverables/tests/produced-files.spec.tsx rename to packages/client/ui-deliverables/tests/produced-files.client.spec.tsx diff --git a/packages/client/ui-directory-picker-native/tests/client-flow.spec.tsx b/packages/client/ui-directory-picker-native/tests/client-flow.client.spec.tsx similarity index 100% rename from packages/client/ui-directory-picker-native/tests/client-flow.spec.tsx rename to packages/client/ui-directory-picker-native/tests/client-flow.client.spec.tsx diff --git a/packages/client/ui-directory-picker/tests/client-flow.spec.tsx b/packages/client/ui-directory-picker/tests/client-flow.client.spec.tsx similarity index 100% rename from packages/client/ui-directory-picker/tests/client-flow.spec.tsx rename to packages/client/ui-directory-picker/tests/client-flow.client.spec.tsx diff --git a/packages/client/ui-directory-picker/tests/directory-browser.spec.tsx b/packages/client/ui-directory-picker/tests/directory-browser.client.spec.tsx similarity index 100% rename from packages/client/ui-directory-picker/tests/directory-browser.spec.tsx rename to packages/client/ui-directory-picker/tests/directory-browser.client.spec.tsx diff --git a/packages/client/ui-goal/tests/browser-plugin.spec.tsx b/packages/client/ui-goal/tests/browser-plugin.client.spec.tsx similarity index 100% rename from packages/client/ui-goal/tests/browser-plugin.spec.tsx rename to packages/client/ui-goal/tests/browser-plugin.client.spec.tsx diff --git a/packages/client/ui-goal/tests/goal-command-input.spec.tsx b/packages/client/ui-goal/tests/goal-command-input.client.spec.tsx similarity index 100% rename from packages/client/ui-goal/tests/goal-command-input.spec.tsx rename to packages/client/ui-goal/tests/goal-command-input.client.spec.tsx diff --git a/packages/client/ui-goal/tests/goalbar.spec.tsx b/packages/client/ui-goal/tests/goalbar.client.spec.tsx similarity index 100% rename from packages/client/ui-goal/tests/goalbar.spec.tsx rename to packages/client/ui-goal/tests/goalbar.client.spec.tsx diff --git a/packages/client/ui-layout/tests/app-frame.spec.tsx b/packages/client/ui-layout/tests/app-frame.client.spec.tsx similarity index 100% rename from packages/client/ui-layout/tests/app-frame.spec.tsx rename to packages/client/ui-layout/tests/app-frame.client.spec.tsx diff --git a/packages/client/ui-layout/tests/apply.spec.ts b/packages/client/ui-layout/tests/apply.client.spec.ts similarity index 100% rename from packages/client/ui-layout/tests/apply.spec.ts rename to packages/client/ui-layout/tests/apply.client.spec.ts diff --git a/packages/client/ui-layout/tests/columns.spec.ts b/packages/client/ui-layout/tests/columns.client.spec.ts similarity index 100% rename from packages/client/ui-layout/tests/columns.spec.ts rename to packages/client/ui-layout/tests/columns.client.spec.ts diff --git a/packages/client/ui-layout/tests/layout-store.spec.ts b/packages/client/ui-layout/tests/layout-store.client.spec.ts similarity index 100% rename from packages/client/ui-layout/tests/layout-store.spec.ts rename to packages/client/ui-layout/tests/layout-store.client.spec.ts diff --git a/packages/client/ui-layout/tests/service.spec.ts b/packages/client/ui-layout/tests/service.client.spec.ts similarity index 100% rename from packages/client/ui-layout/tests/service.spec.ts rename to packages/client/ui-layout/tests/service.client.spec.ts diff --git a/packages/client/ui-layout/tests/theme-presenter.spec.ts b/packages/client/ui-layout/tests/theme-presenter.client.spec.ts similarity index 100% rename from packages/client/ui-layout/tests/theme-presenter.spec.ts rename to packages/client/ui-layout/tests/theme-presenter.client.spec.ts diff --git a/packages/client/ui-model/tests/browser-plugin.spec.ts b/packages/client/ui-model/tests/browser-plugin.client.spec.ts similarity index 100% rename from packages/client/ui-model/tests/browser-plugin.spec.ts rename to packages/client/ui-model/tests/browser-plugin.client.spec.ts diff --git a/packages/client/ui-model/tests/model-select.spec.tsx b/packages/client/ui-model/tests/model-select.client.spec.tsx similarity index 100% rename from packages/client/ui-model/tests/model-select.spec.tsx rename to packages/client/ui-model/tests/model-select.client.spec.tsx diff --git a/packages/client/ui-models/tests/apply.spec.ts b/packages/client/ui-models/tests/apply.client.spec.ts similarity index 100% rename from packages/client/ui-models/tests/apply.spec.ts rename to packages/client/ui-models/tests/apply.client.spec.ts diff --git a/packages/client/ui-models/tests/components.spec.tsx b/packages/client/ui-models/tests/components.client.spec.tsx similarity index 100% rename from packages/client/ui-models/tests/components.spec.tsx rename to packages/client/ui-models/tests/components.client.spec.tsx diff --git a/packages/client/ui-models/tests/invariant.spec.ts b/packages/client/ui-models/tests/invariant.client.spec.ts similarity index 100% rename from packages/client/ui-models/tests/invariant.spec.ts rename to packages/client/ui-models/tests/invariant.client.spec.ts diff --git a/packages/client/ui-models/tests/onboarding-dialog.spec.tsx b/packages/client/ui-models/tests/onboarding-dialog.client.spec.tsx similarity index 100% rename from packages/client/ui-models/tests/onboarding-dialog.spec.tsx rename to packages/client/ui-models/tests/onboarding-dialog.client.spec.tsx diff --git a/packages/client/ui-models/tests/provider-form.spec.tsx b/packages/client/ui-models/tests/provider-form.client.spec.tsx similarity index 100% rename from packages/client/ui-models/tests/provider-form.spec.tsx rename to packages/client/ui-models/tests/provider-form.client.spec.tsx diff --git a/packages/client/ui-models/tests/readiness.spec.ts b/packages/client/ui-models/tests/readiness.client.spec.ts similarity index 100% rename from packages/client/ui-models/tests/readiness.spec.ts rename to packages/client/ui-models/tests/readiness.client.spec.ts diff --git a/packages/client/ui-models/tests/store.spec.ts b/packages/client/ui-models/tests/store.client.spec.ts similarity index 100% rename from packages/client/ui-models/tests/store.spec.ts rename to packages/client/ui-models/tests/store.client.spec.ts diff --git a/packages/client/ui-models/tests/styles.spec.ts b/packages/client/ui-models/tests/styles.client.spec.ts similarity index 100% rename from packages/client/ui-models/tests/styles.spec.ts rename to packages/client/ui-models/tests/styles.client.spec.ts diff --git a/packages/client/ui-permission/tests/browser-plugin.spec.ts b/packages/client/ui-permission/tests/browser-plugin.client.spec.ts similarity index 100% rename from packages/client/ui-permission/tests/browser-plugin.spec.ts rename to packages/client/ui-permission/tests/browser-plugin.client.spec.ts diff --git a/packages/client/ui-permission/tests/permission-row.spec.tsx b/packages/client/ui-permission/tests/permission-row.client.spec.tsx similarity index 100% rename from packages/client/ui-permission/tests/permission-row.spec.tsx rename to packages/client/ui-permission/tests/permission-row.client.spec.tsx diff --git a/packages/client/ui-permission/tests/settings-store.spec.ts b/packages/client/ui-permission/tests/settings-store.client.spec.ts similarity index 100% rename from packages/client/ui-permission/tests/settings-store.spec.ts rename to packages/client/ui-permission/tests/settings-store.client.spec.ts diff --git a/packages/client/ui-plan/tests/browser-plugin.spec.ts b/packages/client/ui-plan/tests/browser-plugin.client.spec.ts similarity index 100% rename from packages/client/ui-plan/tests/browser-plugin.spec.ts rename to packages/client/ui-plan/tests/browser-plugin.client.spec.ts diff --git a/packages/client/ui-plan/tests/plan-mode-control.spec.tsx b/packages/client/ui-plan/tests/plan-mode-control.client.spec.tsx similarity index 100% rename from packages/client/ui-plan/tests/plan-mode-control.spec.tsx rename to packages/client/ui-plan/tests/plan-mode-control.client.spec.tsx diff --git a/packages/client/ui-plugin-config/tests/apply.spec.ts b/packages/client/ui-plugin-config/tests/apply.client.spec.ts similarity index 100% rename from packages/client/ui-plugin-config/tests/apply.spec.ts rename to packages/client/ui-plugin-config/tests/apply.client.spec.ts diff --git a/packages/client/ui-plugin-config/tests/fields.spec.tsx b/packages/client/ui-plugin-config/tests/fields.client.spec.tsx similarity index 100% rename from packages/client/ui-plugin-config/tests/fields.spec.tsx rename to packages/client/ui-plugin-config/tests/fields.client.spec.tsx diff --git a/packages/client/ui-plugin-config/tests/invariant.spec.ts b/packages/client/ui-plugin-config/tests/invariant.client.spec.ts similarity index 100% rename from packages/client/ui-plugin-config/tests/invariant.spec.ts rename to packages/client/ui-plugin-config/tests/invariant.client.spec.ts diff --git a/packages/client/ui-plugin-config/tests/section.spec.tsx b/packages/client/ui-plugin-config/tests/section.client.spec.tsx similarity index 100% rename from packages/client/ui-plugin-config/tests/section.spec.tsx rename to packages/client/ui-plugin-config/tests/section.client.spec.tsx diff --git a/packages/client/ui-plugin-config/tests/stores.spec.ts b/packages/client/ui-plugin-config/tests/stores.client.spec.ts similarity index 100% rename from packages/client/ui-plugin-config/tests/stores.spec.ts rename to packages/client/ui-plugin-config/tests/stores.client.spec.ts diff --git a/packages/client/ui-primitives/tests/ansi.spec.ts b/packages/client/ui-primitives/tests/ansi.client.spec.ts similarity index 100% rename from packages/client/ui-primitives/tests/ansi.spec.ts rename to packages/client/ui-primitives/tests/ansi.client.spec.ts diff --git a/packages/client/ui-primitives/tests/atoms.spec.tsx b/packages/client/ui-primitives/tests/atoms.client.spec.tsx similarity index 100% rename from packages/client/ui-primitives/tests/atoms.spec.tsx rename to packages/client/ui-primitives/tests/atoms.client.spec.tsx diff --git a/packages/client/ui-primitives/tests/code-block.spec.tsx b/packages/client/ui-primitives/tests/code-block.client.spec.tsx similarity index 100% rename from packages/client/ui-primitives/tests/code-block.spec.tsx rename to packages/client/ui-primitives/tests/code-block.client.spec.tsx diff --git a/packages/client/ui-primitives/tests/diff-block.spec.tsx b/packages/client/ui-primitives/tests/diff-block.client.spec.tsx similarity index 100% rename from packages/client/ui-primitives/tests/diff-block.spec.tsx rename to packages/client/ui-primitives/tests/diff-block.client.spec.tsx diff --git a/packages/client/ui-primitives/tests/hover-card.spec.tsx b/packages/client/ui-primitives/tests/hover-card.client.spec.tsx similarity index 100% rename from packages/client/ui-primitives/tests/hover-card.spec.tsx rename to packages/client/ui-primitives/tests/hover-card.client.spec.tsx diff --git a/packages/client/ui-primitives/tests/icons.spec.tsx b/packages/client/ui-primitives/tests/icons.client.spec.tsx similarity index 100% rename from packages/client/ui-primitives/tests/icons.spec.tsx rename to packages/client/ui-primitives/tests/icons.client.spec.tsx diff --git a/packages/client/ui-primitives/tests/invariant.spec.ts b/packages/client/ui-primitives/tests/invariant.client.spec.ts similarity index 100% rename from packages/client/ui-primitives/tests/invariant.spec.ts rename to packages/client/ui-primitives/tests/invariant.client.spec.ts diff --git a/packages/client/ui-primitives/tests/json-tree.spec.tsx b/packages/client/ui-primitives/tests/json-tree.client.spec.tsx similarity index 100% rename from packages/client/ui-primitives/tests/json-tree.spec.tsx rename to packages/client/ui-primitives/tests/json-tree.client.spec.tsx diff --git a/packages/client/ui-primitives/tests/markdown-dom-parity.spec.tsx b/packages/client/ui-primitives/tests/markdown-dom-parity.client.spec.tsx similarity index 100% rename from packages/client/ui-primitives/tests/markdown-dom-parity.spec.tsx rename to packages/client/ui-primitives/tests/markdown-dom-parity.client.spec.tsx diff --git a/packages/client/ui-primitives/tests/markdown-incremental.spec.tsx b/packages/client/ui-primitives/tests/markdown-incremental.client.spec.tsx similarity index 100% rename from packages/client/ui-primitives/tests/markdown-incremental.spec.tsx rename to packages/client/ui-primitives/tests/markdown-incremental.client.spec.tsx diff --git a/packages/client/ui-primitives/tests/markdown-plain-text.spec.ts b/packages/client/ui-primitives/tests/markdown-plain-text.client.spec.ts similarity index 100% rename from packages/client/ui-primitives/tests/markdown-plain-text.spec.ts rename to packages/client/ui-primitives/tests/markdown-plain-text.client.spec.ts diff --git a/packages/client/ui-primitives/tests/markdown-render-units.spec.tsx b/packages/client/ui-primitives/tests/markdown-render-units.client.spec.tsx similarity index 100% rename from packages/client/ui-primitives/tests/markdown-render-units.spec.tsx rename to packages/client/ui-primitives/tests/markdown-render-units.client.spec.tsx diff --git a/packages/client/ui-primitives/tests/markdown.spec.tsx b/packages/client/ui-primitives/tests/markdown.client.spec.tsx similarity index 100% rename from packages/client/ui-primitives/tests/markdown.spec.tsx rename to packages/client/ui-primitives/tests/markdown.client.spec.tsx diff --git a/packages/client/ui-primitives/tests/onboarding-surface.spec.tsx b/packages/client/ui-primitives/tests/onboarding-surface.client.spec.tsx similarity index 100% rename from packages/client/ui-primitives/tests/onboarding-surface.spec.tsx rename to packages/client/ui-primitives/tests/onboarding-surface.client.spec.tsx diff --git a/packages/client/ui-primitives/tests/read-block.spec.tsx b/packages/client/ui-primitives/tests/read-block.client.spec.tsx similarity index 100% rename from packages/client/ui-primitives/tests/read-block.spec.tsx rename to packages/client/ui-primitives/tests/read-block.client.spec.tsx diff --git a/packages/client/ui-primitives/tests/search-block.spec.tsx b/packages/client/ui-primitives/tests/search-block.client.spec.tsx similarity index 100% rename from packages/client/ui-primitives/tests/search-block.spec.tsx rename to packages/client/ui-primitives/tests/search-block.client.spec.tsx diff --git a/packages/client/ui-primitives/tests/state-dot.spec.tsx b/packages/client/ui-primitives/tests/state-dot.client.spec.tsx similarity index 100% rename from packages/client/ui-primitives/tests/state-dot.spec.tsx rename to packages/client/ui-primitives/tests/state-dot.client.spec.tsx diff --git a/packages/client/ui-primitives/tests/terminal-block.spec.tsx b/packages/client/ui-primitives/tests/terminal-block.client.spec.tsx similarity index 100% rename from packages/client/ui-primitives/tests/terminal-block.spec.tsx rename to packages/client/ui-primitives/tests/terminal-block.client.spec.tsx diff --git a/packages/client/ui-primitives/tests/toast.spec.tsx b/packages/client/ui-primitives/tests/toast.client.spec.tsx similarity index 100% rename from packages/client/ui-primitives/tests/toast.spec.tsx rename to packages/client/ui-primitives/tests/toast.client.spec.tsx diff --git a/packages/client/ui-primitives/tests/tooltip.spec.tsx b/packages/client/ui-primitives/tests/tooltip.client.spec.tsx similarity index 100% rename from packages/client/ui-primitives/tests/tooltip.spec.tsx rename to packages/client/ui-primitives/tests/tooltip.client.spec.tsx diff --git a/packages/client/ui-primitives/tests/web-block.spec.tsx b/packages/client/ui-primitives/tests/web-block.client.spec.tsx similarity index 100% rename from packages/client/ui-primitives/tests/web-block.spec.tsx rename to packages/client/ui-primitives/tests/web-block.client.spec.tsx diff --git a/packages/client/ui-question/tests/browser-plugin.spec.ts b/packages/client/ui-question/tests/browser-plugin.client.spec.ts similarity index 100% rename from packages/client/ui-question/tests/browser-plugin.spec.ts rename to packages/client/ui-question/tests/browser-plugin.client.spec.ts diff --git a/packages/client/ui-question/tests/node-plugin.spec.ts b/packages/client/ui-question/tests/node-plugin.client.spec.ts similarity index 100% rename from packages/client/ui-question/tests/node-plugin.spec.ts rename to packages/client/ui-question/tests/node-plugin.client.spec.ts diff --git a/packages/client/ui-question/tests/plan-review-panel.spec.tsx b/packages/client/ui-question/tests/plan-review-panel.client.spec.tsx similarity index 100% rename from packages/client/ui-question/tests/plan-review-panel.spec.tsx rename to packages/client/ui-question/tests/plan-review-panel.client.spec.tsx diff --git a/packages/client/ui-question/tests/question-composer.spec.tsx b/packages/client/ui-question/tests/question-composer.client.spec.tsx similarity index 100% rename from packages/client/ui-question/tests/question-composer.spec.tsx rename to packages/client/ui-question/tests/question-composer.client.spec.tsx diff --git a/packages/client/ui-settings-general/tests/apply.spec.ts b/packages/client/ui-settings-general/tests/apply.client.spec.ts similarity index 100% rename from packages/client/ui-settings-general/tests/apply.spec.ts rename to packages/client/ui-settings-general/tests/apply.client.spec.ts diff --git a/packages/client/ui-settings-general/tests/components.spec.tsx b/packages/client/ui-settings-general/tests/components.client.spec.tsx similarity index 100% rename from packages/client/ui-settings-general/tests/components.spec.tsx rename to packages/client/ui-settings-general/tests/components.client.spec.tsx diff --git a/packages/client/ui-settings-general/tests/host.spec.ts b/packages/client/ui-settings-general/tests/host.client.spec.ts similarity index 100% rename from packages/client/ui-settings-general/tests/host.spec.ts rename to packages/client/ui-settings-general/tests/host.client.spec.ts diff --git a/packages/client/ui-settings-general/tests/invariant.spec.ts b/packages/client/ui-settings-general/tests/invariant.client.spec.ts similarity index 100% rename from packages/client/ui-settings-general/tests/invariant.spec.ts rename to packages/client/ui-settings-general/tests/invariant.client.spec.ts diff --git a/packages/client/ui-settings-general/tests/settings-document-store.spec.ts b/packages/client/ui-settings-general/tests/settings-document-store.client.spec.ts similarity index 100% rename from packages/client/ui-settings-general/tests/settings-document-store.spec.ts rename to packages/client/ui-settings-general/tests/settings-document-store.client.spec.ts diff --git a/packages/client/ui-settings-general/tests/settings-root.spec.tsx b/packages/client/ui-settings-general/tests/settings-root.client.spec.tsx similarity index 100% rename from packages/client/ui-settings-general/tests/settings-root.spec.tsx rename to packages/client/ui-settings-general/tests/settings-root.client.spec.tsx diff --git a/packages/client/ui-settings-general/tests/shell.spec.ts b/packages/client/ui-settings-general/tests/shell.client.spec.ts similarity index 100% rename from packages/client/ui-settings-general/tests/shell.spec.ts rename to packages/client/ui-settings-general/tests/shell.client.spec.ts diff --git a/packages/client/ui-settings-general/tests/welcome-notice.spec.tsx b/packages/client/ui-settings-general/tests/welcome-notice.client.spec.tsx similarity index 100% rename from packages/client/ui-settings-general/tests/welcome-notice.spec.tsx rename to packages/client/ui-settings-general/tests/welcome-notice.client.spec.tsx diff --git a/packages/client/ui-settings-general/tests/welcome-store.spec.ts b/packages/client/ui-settings-general/tests/welcome-store.client.spec.ts similarity index 100% rename from packages/client/ui-settings-general/tests/welcome-store.spec.ts rename to packages/client/ui-settings-general/tests/welcome-store.client.spec.ts diff --git a/packages/client/ui-settings/tests/invariant.spec.ts b/packages/client/ui-settings/tests/invariant.client.spec.ts similarity index 100% rename from packages/client/ui-settings/tests/invariant.spec.ts rename to packages/client/ui-settings/tests/invariant.client.spec.ts diff --git a/packages/client/ui-settings/tests/plugin.spec.ts b/packages/client/ui-settings/tests/plugin.client.spec.ts similarity index 100% rename from packages/client/ui-settings/tests/plugin.spec.ts rename to packages/client/ui-settings/tests/plugin.client.spec.ts diff --git a/packages/client/ui-settings/tests/settings-scope.spec.ts b/packages/client/ui-settings/tests/settings-scope.client.spec.ts similarity index 100% rename from packages/client/ui-settings/tests/settings-scope.spec.ts rename to packages/client/ui-settings/tests/settings-scope.client.spec.ts diff --git a/packages/client/ui-sidebar/tests/__snapshots__/sidebar-snapshot.spec.tsx.snap b/packages/client/ui-sidebar/tests/__snapshots__/sidebar-snapshot.client.spec.tsx.snap similarity index 100% rename from packages/client/ui-sidebar/tests/__snapshots__/sidebar-snapshot.spec.tsx.snap rename to packages/client/ui-sidebar/tests/__snapshots__/sidebar-snapshot.client.spec.tsx.snap diff --git a/packages/client/ui-sidebar/tests/apply.spec.tsx b/packages/client/ui-sidebar/tests/apply.client.spec.tsx similarity index 100% rename from packages/client/ui-sidebar/tests/apply.spec.tsx rename to packages/client/ui-sidebar/tests/apply.client.spec.tsx diff --git a/packages/client/ui-sidebar/tests/invariant.spec.ts b/packages/client/ui-sidebar/tests/invariant.client.spec.ts similarity index 100% rename from packages/client/ui-sidebar/tests/invariant.spec.ts rename to packages/client/ui-sidebar/tests/invariant.client.spec.ts diff --git a/packages/client/ui-sidebar/tests/pointer-scrollbars.spec.tsx b/packages/client/ui-sidebar/tests/pointer-scrollbars.client.spec.tsx similarity index 100% rename from packages/client/ui-sidebar/tests/pointer-scrollbars.spec.tsx rename to packages/client/ui-sidebar/tests/pointer-scrollbars.client.spec.tsx diff --git a/packages/client/ui-sidebar/tests/scrollbar-quiet-styles.spec.ts b/packages/client/ui-sidebar/tests/scrollbar-quiet-styles.client.spec.ts similarity index 100% rename from packages/client/ui-sidebar/tests/scrollbar-quiet-styles.spec.ts rename to packages/client/ui-sidebar/tests/scrollbar-quiet-styles.client.spec.ts diff --git a/packages/client/ui-sidebar/tests/sidebar-root.spec.tsx b/packages/client/ui-sidebar/tests/sidebar-root.client.spec.tsx similarity index 100% rename from packages/client/ui-sidebar/tests/sidebar-root.spec.tsx rename to packages/client/ui-sidebar/tests/sidebar-root.client.spec.tsx diff --git a/packages/client/ui-sidebar/tests/sidebar-snapshot.spec.tsx b/packages/client/ui-sidebar/tests/sidebar-snapshot.client.spec.tsx similarity index 100% rename from packages/client/ui-sidebar/tests/sidebar-snapshot.spec.tsx rename to packages/client/ui-sidebar/tests/sidebar-snapshot.client.spec.tsx diff --git a/packages/client/ui-sidebar/tests/sidebar-styles.spec.ts b/packages/client/ui-sidebar/tests/sidebar-styles.client.spec.ts similarity index 100% rename from packages/client/ui-sidebar/tests/sidebar-styles.spec.ts rename to packages/client/ui-sidebar/tests/sidebar-styles.client.spec.ts diff --git a/packages/client/ui-skill/tests/browser-plugin.spec.ts b/packages/client/ui-skill/tests/browser-plugin.client.spec.ts similarity index 100% rename from packages/client/ui-skill/tests/browser-plugin.spec.ts rename to packages/client/ui-skill/tests/browser-plugin.client.spec.ts diff --git a/packages/client/ui-skill/tests/skill-row.spec.tsx b/packages/client/ui-skill/tests/skill-row.client.spec.tsx similarity index 100% rename from packages/client/ui-skill/tests/skill-row.spec.tsx rename to packages/client/ui-skill/tests/skill-row.client.spec.tsx diff --git a/packages/client/ui-slash/tests/apply.spec.ts b/packages/client/ui-slash/tests/apply.client.spec.ts similarity index 100% rename from packages/client/ui-slash/tests/apply.spec.ts rename to packages/client/ui-slash/tests/apply.client.spec.ts diff --git a/packages/client/ui-slash/tests/core-detect.spec.ts b/packages/client/ui-slash/tests/core-detect.client.spec.ts similarity index 100% rename from packages/client/ui-slash/tests/core-detect.spec.ts rename to packages/client/ui-slash/tests/core-detect.client.spec.ts diff --git a/packages/client/ui-slash/tests/core-menu.spec.ts b/packages/client/ui-slash/tests/core-menu.client.spec.ts similarity index 100% rename from packages/client/ui-slash/tests/core-menu.spec.ts rename to packages/client/ui-slash/tests/core-menu.client.spec.ts diff --git a/packages/client/ui-slash/tests/menu-view.spec.tsx b/packages/client/ui-slash/tests/menu-view.client.spec.tsx similarity index 100% rename from packages/client/ui-slash/tests/menu-view.spec.tsx rename to packages/client/ui-slash/tests/menu-view.client.spec.tsx diff --git a/packages/client/ui-slash/tests/service.spec.ts b/packages/client/ui-slash/tests/service.client.spec.ts similarity index 100% rename from packages/client/ui-slash/tests/service.spec.ts rename to packages/client/ui-slash/tests/service.client.spec.ts diff --git a/packages/client/ui-slots/tests/core.spec.ts b/packages/client/ui-slots/tests/core.client.spec.ts similarity index 100% rename from packages/client/ui-slots/tests/core.spec.ts rename to packages/client/ui-slots/tests/core.client.spec.ts diff --git a/packages/client/ui-slots/tests/dynamic-keys.spec.ts b/packages/client/ui-slots/tests/dynamic-keys.client.spec.ts similarity index 100% rename from packages/client/ui-slots/tests/dynamic-keys.spec.ts rename to packages/client/ui-slots/tests/dynamic-keys.client.spec.ts diff --git a/packages/client/ui-slots/tests/invariant.spec.ts b/packages/client/ui-slots/tests/invariant.client.spec.ts similarity index 100% rename from packages/client/ui-slots/tests/invariant.spec.ts rename to packages/client/ui-slots/tests/invariant.client.spec.ts diff --git a/packages/client/ui-slots/tests/type-chain.spec.tsx b/packages/client/ui-slots/tests/type-chain.client.spec.tsx similarity index 100% rename from packages/client/ui-slots/tests/type-chain.spec.tsx rename to packages/client/ui-slots/tests/type-chain.client.spec.tsx diff --git a/packages/client/ui-subagent/tests/browser-plugin.spec.ts b/packages/client/ui-subagent/tests/browser-plugin.client.spec.ts similarity index 100% rename from packages/client/ui-subagent/tests/browser-plugin.spec.ts rename to packages/client/ui-subagent/tests/browser-plugin.client.spec.ts diff --git a/packages/client/ui-subagent/tests/conversation-ui.spec.tsx b/packages/client/ui-subagent/tests/conversation-ui.client.spec.tsx similarity index 100% rename from packages/client/ui-subagent/tests/conversation-ui.spec.tsx rename to packages/client/ui-subagent/tests/conversation-ui.client.spec.tsx diff --git a/packages/client/ui-task/tests/browser-plugin.spec.ts b/packages/client/ui-task/tests/browser-plugin.client.spec.ts similarity index 100% rename from packages/client/ui-task/tests/browser-plugin.spec.ts rename to packages/client/ui-task/tests/browser-plugin.client.spec.ts diff --git a/packages/client/ui-task/tests/task-list-action.spec.tsx b/packages/client/ui-task/tests/task-list-action.client.spec.tsx similarity index 100% rename from packages/client/ui-task/tests/task-list-action.spec.tsx rename to packages/client/ui-task/tests/task-list-action.client.spec.tsx diff --git a/packages/client/ui-theme/tests/appearance-row.spec.tsx b/packages/client/ui-theme/tests/appearance-row.client.spec.tsx similarity index 100% rename from packages/client/ui-theme/tests/appearance-row.spec.tsx rename to packages/client/ui-theme/tests/appearance-row.client.spec.tsx diff --git a/packages/client/ui-theme/tests/apply.spec.ts b/packages/client/ui-theme/tests/apply.client.spec.ts similarity index 100% rename from packages/client/ui-theme/tests/apply.spec.ts rename to packages/client/ui-theme/tests/apply.client.spec.ts diff --git a/packages/client/ui-theme/tests/boot-theme.spec.ts b/packages/client/ui-theme/tests/boot-theme.client.spec.ts similarity index 100% rename from packages/client/ui-theme/tests/boot-theme.spec.ts rename to packages/client/ui-theme/tests/boot-theme.client.spec.ts diff --git a/packages/client/ui-theme/tests/host.spec.ts b/packages/client/ui-theme/tests/host.client.spec.ts similarity index 100% rename from packages/client/ui-theme/tests/host.spec.ts rename to packages/client/ui-theme/tests/host.client.spec.ts diff --git a/packages/client/ui-theme/tests/invariant.spec.ts b/packages/client/ui-theme/tests/invariant.client.spec.ts similarity index 100% rename from packages/client/ui-theme/tests/invariant.spec.ts rename to packages/client/ui-theme/tests/invariant.client.spec.ts diff --git a/packages/client/ui-theme/tests/scrollbar-styles.spec.ts b/packages/client/ui-theme/tests/scrollbar-styles.client.spec.ts similarity index 100% rename from packages/client/ui-theme/tests/scrollbar-styles.spec.ts rename to packages/client/ui-theme/tests/scrollbar-styles.client.spec.ts diff --git a/packages/client/ui-theme/tests/settings-store.spec.ts b/packages/client/ui-theme/tests/settings-store.client.spec.ts similarity index 100% rename from packages/client/ui-theme/tests/settings-store.spec.ts rename to packages/client/ui-theme/tests/settings-store.client.spec.ts diff --git a/packages/client/ui-theme/tests/theme.spec.ts b/packages/client/ui-theme/tests/theme.client.spec.ts similarity index 100% rename from packages/client/ui-theme/tests/theme.spec.ts rename to packages/client/ui-theme/tests/theme.client.spec.ts diff --git a/packages/client/ui-tool/tests/ask-question-row.spec.tsx b/packages/client/ui-tool/tests/ask-question-row.client.spec.tsx similarity index 100% rename from packages/client/ui-tool/tests/ask-question-row.spec.tsx rename to packages/client/ui-tool/tests/ask-question-row.client.spec.tsx diff --git a/packages/client/ui-tool/tests/assembly-surfaces.spec.tsx b/packages/client/ui-tool/tests/assembly-surfaces.client.spec.tsx similarity index 99% rename from packages/client/ui-tool/tests/assembly-surfaces.spec.tsx rename to packages/client/ui-tool/tests/assembly-surfaces.client.spec.tsx index 80ee97d157..668b1bda89 100644 --- a/packages/client/ui-tool/tests/assembly-surfaces.spec.tsx +++ b/packages/client/ui-tool/tests/assembly-surfaces.client.spec.tsx @@ -8,7 +8,7 @@ import type { PropsRenderSlots } from '@deepseek-ai/dsh-client-ui-slots' import { SlotTestRuntime, usePinnedBrowserLanguages, stubSettingsScope } from '@deepseek-ai/dsh-client-test-runtime' import { apply as applyConversation, inject as injectConversation } from '@deepseek-ai/dsh-client-ui-conversation/client' import { apply as applyTool, inject as injectTool } from '../src/client/apply.ts' -import { toolChatSnapshot } from './tool-details-render.tsx' +import { toolChatSnapshot } from './tool-details-render.client.tsx' // The service reads its initial locale from the browser; these specs assert // the shipped Chinese copy, so they state the browser they assume. diff --git a/packages/client/ui-tool/tests/chat-code-subcalls.spec.tsx b/packages/client/ui-tool/tests/chat-code-subcalls.client.spec.tsx similarity index 99% rename from packages/client/ui-tool/tests/chat-code-subcalls.spec.tsx rename to packages/client/ui-tool/tests/chat-code-subcalls.client.spec.tsx index fbdfc4b75e..61a15dd283 100644 --- a/packages/client/ui-tool/tests/chat-code-subcalls.spec.tsx +++ b/packages/client/ui-tool/tests/chat-code-subcalls.client.spec.tsx @@ -25,7 +25,7 @@ import { LocaleService } from '@deepseek-ai/dsh-client-locale/client' import type { PropsRenderSlots } from '@deepseek-ai/dsh-client-ui-slots' import { apply as applyConversation, inject as injectConversation } from '@deepseek-ai/dsh-client-ui-conversation/client' import { apply as applyTool, inject as injectTool } from '../src/client/apply.ts' -import { toolChatSnapshot } from './tool-details-render.tsx' +import { toolChatSnapshot } from './tool-details-render.client.tsx' const SID = 's1' as SessionId diff --git a/packages/client/ui-tool/tests/coverage-tails.spec.tsx b/packages/client/ui-tool/tests/coverage-tails.client.spec.tsx similarity index 100% rename from packages/client/ui-tool/tests/coverage-tails.spec.tsx rename to packages/client/ui-tool/tests/coverage-tails.client.spec.tsx diff --git a/packages/client/ui-tool/tests/diff-card.spec.tsx b/packages/client/ui-tool/tests/diff-card.client.spec.tsx similarity index 99% rename from packages/client/ui-tool/tests/diff-card.spec.tsx rename to packages/client/ui-tool/tests/diff-card.client.spec.tsx index c37b5bb540..6708d3806a 100644 --- a/packages/client/ui-tool/tests/diff-card.spec.tsx +++ b/packages/client/ui-tool/tests/diff-card.client.spec.tsx @@ -22,7 +22,7 @@ import { createChatStore } from '@deepseek-ai/dsh-client-ui-conversation/src/cli import { GenericToolCard, type GenericToolCardProps } from '../src/client/tool/toolviews/GenericToolCard.tsx' import { DetailsPanel } from '@deepseek-ai/dsh-client-ui-conversation/src/client/skeleton/DetailsPanel.tsx' import { FileMutationRow, fileMutationToolview } from '../src/client/tool/toolviews/file-mutation-row.tsx' -import { renderToolDetails, SessionProviderStub, toolChatSnapshot } from './tool-details-render.tsx' +import { renderToolDetails, SessionProviderStub, toolChatSnapshot } from './tool-details-render.client.tsx' import { zh } from '@deepseek-ai/dsh-client-ui-conversation/src/client/locales.ts' afterEach(cleanup) diff --git a/packages/client/ui-tool/tests/read-card.spec.tsx b/packages/client/ui-tool/tests/read-card.client.spec.tsx similarity index 99% rename from packages/client/ui-tool/tests/read-card.spec.tsx rename to packages/client/ui-tool/tests/read-card.client.spec.tsx index b86b17924b..6351c5c312 100644 --- a/packages/client/ui-tool/tests/read-card.spec.tsx +++ b/packages/client/ui-tool/tests/read-card.client.spec.tsx @@ -26,7 +26,7 @@ import { GenericToolCard, type GenericToolCardProps } from '../src/client/tool/t import { zh } from '@deepseek-ai/dsh-client-ui-conversation/src/client/locales.ts' import { DetailsPanel } from '@deepseek-ai/dsh-client-ui-conversation/src/client/skeleton/DetailsPanel.tsx' import { ReadRow, readToolview } from '../src/client/tool/toolviews/read-row.tsx' -import { renderToolDetails, SessionProviderStub, toolChatSnapshot } from './tool-details-render.tsx' +import { renderToolDetails, SessionProviderStub, toolChatSnapshot } from './tool-details-render.client.tsx' afterEach(cleanup) diff --git a/packages/client/ui-tool/tests/search-card.spec.tsx b/packages/client/ui-tool/tests/search-card.client.spec.tsx similarity index 99% rename from packages/client/ui-tool/tests/search-card.spec.tsx rename to packages/client/ui-tool/tests/search-card.client.spec.tsx index 16e127c7ca..cc3a1acf72 100644 --- a/packages/client/ui-tool/tests/search-card.spec.tsx +++ b/packages/client/ui-tool/tests/search-card.client.spec.tsx @@ -25,7 +25,7 @@ import { createChatStore } from '@deepseek-ai/dsh-client-ui-conversation/src/cli import { GenericToolCard, type GenericToolCardProps } from '../src/client/tool/toolviews/GenericToolCard.tsx' import { DetailsPanel } from '@deepseek-ai/dsh-client-ui-conversation/src/client/skeleton/DetailsPanel.tsx' import { SearchRow, searchToolview } from '../src/client/tool/toolviews/search-row.tsx' -import { renderToolDetails, SessionProviderStub, toolChatSnapshot } from './tool-details-render.tsx' +import { renderToolDetails, SessionProviderStub, toolChatSnapshot } from './tool-details-render.client.tsx' /** SearchRow now composes ToolRow, so its props include the locale `t` seat. */ type SearchRowProps = Parameters[0] diff --git a/packages/client/ui-tool/tests/terminal-card.spec.tsx b/packages/client/ui-tool/tests/terminal-card.client.spec.tsx similarity index 99% rename from packages/client/ui-tool/tests/terminal-card.spec.tsx rename to packages/client/ui-tool/tests/terminal-card.client.spec.tsx index cb00ea4b93..ad351dfabe 100644 --- a/packages/client/ui-tool/tests/terminal-card.spec.tsx +++ b/packages/client/ui-tool/tests/terminal-card.client.spec.tsx @@ -22,7 +22,7 @@ import { createChatStore } from '@deepseek-ai/dsh-client-ui-conversation/src/cli import { GenericToolCard, type GenericToolCardProps } from '../src/client/tool/toolviews/GenericToolCard.tsx' import { DetailsPanel } from '@deepseek-ai/dsh-client-ui-conversation/src/client/skeleton/DetailsPanel.tsx' import { BashRow } from '../src/client/tool/toolviews/bash-sample.tsx' -import { renderToolDetails, SessionProviderStub, toolChatSnapshot } from './tool-details-render.tsx' +import { renderToolDetails, SessionProviderStub, toolChatSnapshot } from './tool-details-render.client.tsx' import { zh } from '@deepseek-ai/dsh-client-ui-conversation/src/client/locales.ts' type BashRowProps = Parameters[0] diff --git a/packages/client/ui-tool/tests/todo-row.spec.tsx b/packages/client/ui-tool/tests/todo-row.client.spec.tsx similarity index 100% rename from packages/client/ui-tool/tests/todo-row.spec.tsx rename to packages/client/ui-tool/tests/todo-row.client.spec.tsx diff --git a/packages/client/ui-tool/tests/tool-call-tree.spec.tsx b/packages/client/ui-tool/tests/tool-call-tree.client.spec.tsx similarity index 100% rename from packages/client/ui-tool/tests/tool-call-tree.spec.tsx rename to packages/client/ui-tool/tests/tool-call-tree.client.spec.tsx diff --git a/packages/client/ui-tool/tests/tool-details-render.tsx b/packages/client/ui-tool/tests/tool-details-render.client.tsx similarity index 100% rename from packages/client/ui-tool/tests/tool-details-render.tsx rename to packages/client/ui-tool/tests/tool-details-render.client.tsx diff --git a/packages/client/ui-tool/tests/tool-row-styles.spec.ts b/packages/client/ui-tool/tests/tool-row-styles.client.spec.ts similarity index 100% rename from packages/client/ui-tool/tests/tool-row-styles.spec.ts rename to packages/client/ui-tool/tests/tool-row-styles.client.spec.ts diff --git a/packages/client/ui-tool/tests/tool-row.spec.tsx b/packages/client/ui-tool/tests/tool-row.client.spec.tsx similarity index 100% rename from packages/client/ui-tool/tests/tool-row.spec.tsx rename to packages/client/ui-tool/tests/tool-row.client.spec.tsx diff --git a/packages/client/ui-tool/tests/toolview-slot.spec.tsx b/packages/client/ui-tool/tests/toolview-slot.client.spec.tsx similarity index 99% rename from packages/client/ui-tool/tests/toolview-slot.spec.tsx rename to packages/client/ui-tool/tests/toolview-slot.client.spec.tsx index 2ab4ba9b12..afd714c74f 100644 --- a/packages/client/ui-tool/tests/toolview-slot.spec.tsx +++ b/packages/client/ui-tool/tests/toolview-slot.client.spec.tsx @@ -18,7 +18,7 @@ import { LocaleService } from '@deepseek-ai/dsh-client-locale/client' import { apply as applyConversation, inject as injectConversation } from '@deepseek-ai/dsh-client-ui-conversation/client' import { apply as applyTool, inject as injectTool } from '@deepseek-ai/dsh-client-ui-tool/client' import type { ToolCallViewProps } from '@deepseek-ai/dsh-client-ui-tool/client' -import { toolChatSnapshot } from './tool-details-render.tsx' +import { toolChatSnapshot } from './tool-details-render.client.tsx' const SID = 's1' as SessionId diff --git a/packages/client/ui-tool/tests/toolview-type-chain.spec.tsx b/packages/client/ui-tool/tests/toolview-type-chain.client.spec.tsx similarity index 100% rename from packages/client/ui-tool/tests/toolview-type-chain.spec.tsx rename to packages/client/ui-tool/tests/toolview-type-chain.client.spec.tsx diff --git a/packages/client/ui-tool/tests/web-card.spec.tsx b/packages/client/ui-tool/tests/web-card.client.spec.tsx similarity index 99% rename from packages/client/ui-tool/tests/web-card.spec.tsx rename to packages/client/ui-tool/tests/web-card.client.spec.tsx index cc46918694..8a3efd2627 100644 --- a/packages/client/ui-tool/tests/web-card.spec.tsx +++ b/packages/client/ui-tool/tests/web-card.client.spec.tsx @@ -25,7 +25,7 @@ import { createChatStore } from '@deepseek-ai/dsh-client-ui-conversation/src/cli import { GenericToolCard } from '../src/client/tool/toolviews/GenericToolCard.tsx' import { DetailsPanel } from '@deepseek-ai/dsh-client-ui-conversation/src/client/skeleton/DetailsPanel.tsx' import { WebRow, webToolview } from '../src/client/tool/toolviews/web-row.tsx' -import { renderToolDetails, SessionProviderStub, toolChatSnapshot } from './tool-details-render.tsx' +import { renderToolDetails, SessionProviderStub, toolChatSnapshot } from './tool-details-render.client.tsx' import { makeTranslate } from '@deepseek-ai/dsh-client-test-runtime' import { zh as commonZh } from '@deepseek-ai/dsh-client-locale/src/locales/zh.ts' import { zh } from '@deepseek-ai/dsh-client-ui-conversation/src/client/locales.ts' diff --git a/packages/client/ui-trajectory/tests/cell.spec.tsx b/packages/client/ui-trajectory/tests/cell.client.spec.tsx similarity index 100% rename from packages/client/ui-trajectory/tests/cell.spec.tsx rename to packages/client/ui-trajectory/tests/cell.client.spec.tsx diff --git a/packages/client/ui-trajectory/tests/client-bundle.spec.ts b/packages/client/ui-trajectory/tests/client-bundle.client.spec.ts similarity index 100% rename from packages/client/ui-trajectory/tests/client-bundle.spec.ts rename to packages/client/ui-trajectory/tests/client-bundle.client.spec.ts diff --git a/packages/client/ui-trajectory/tests/conversation-definitions.spec.ts b/packages/client/ui-trajectory/tests/conversation-definitions.client.spec.ts similarity index 100% rename from packages/client/ui-trajectory/tests/conversation-definitions.spec.ts rename to packages/client/ui-trajectory/tests/conversation-definitions.client.spec.ts diff --git a/packages/client/ui-trajectory/tests/export-log.spec.ts b/packages/client/ui-trajectory/tests/export-log.client.spec.ts similarity index 100% rename from packages/client/ui-trajectory/tests/export-log.spec.ts rename to packages/client/ui-trajectory/tests/export-log.client.spec.ts diff --git a/packages/client/ui-trajectory/tests/layout.spec.tsx b/packages/client/ui-trajectory/tests/layout.client.spec.tsx similarity index 100% rename from packages/client/ui-trajectory/tests/layout.spec.tsx rename to packages/client/ui-trajectory/tests/layout.client.spec.tsx diff --git a/packages/client/ui-trajectory/tests/snapshot-builder.spec.ts b/packages/client/ui-trajectory/tests/snapshot-builder.client.spec.ts similarity index 100% rename from packages/client/ui-trajectory/tests/snapshot-builder.spec.ts rename to packages/client/ui-trajectory/tests/snapshot-builder.client.spec.ts diff --git a/packages/client/ui-trajectory/tests/table.spec.tsx b/packages/client/ui-trajectory/tests/table.client.spec.tsx similarity index 100% rename from packages/client/ui-trajectory/tests/table.spec.tsx rename to packages/client/ui-trajectory/tests/table.client.spec.tsx diff --git a/packages/client/ui-trajectory/tests/toolbar.spec.tsx b/packages/client/ui-trajectory/tests/toolbar.client.spec.tsx similarity index 100% rename from packages/client/ui-trajectory/tests/toolbar.spec.tsx rename to packages/client/ui-trajectory/tests/toolbar.client.spec.tsx diff --git a/packages/client/ui-trajectory/tests/views.spec.tsx b/packages/client/ui-trajectory/tests/views.client.spec.tsx similarity index 100% rename from packages/client/ui-trajectory/tests/views.spec.tsx rename to packages/client/ui-trajectory/tests/views.client.spec.tsx diff --git a/packages/client/ui-trajectory/tests/virtual-rows.spec.ts b/packages/client/ui-trajectory/tests/virtual-rows.client.spec.ts similarity index 100% rename from packages/client/ui-trajectory/tests/virtual-rows.spec.ts rename to packages/client/ui-trajectory/tests/virtual-rows.client.spec.ts diff --git a/packages/client/ui-workflow-run/tests/workflow-run.spec.tsx b/packages/client/ui-workflow-run/tests/workflow-run.client.spec.tsx similarity index 100% rename from packages/client/ui-workflow-run/tests/workflow-run.spec.tsx rename to packages/client/ui-workflow-run/tests/workflow-run.client.spec.tsx diff --git a/packages/client/ui-workspace/tests/apply.spec.ts b/packages/client/ui-workspace/tests/apply.client.spec.ts similarity index 100% rename from packages/client/ui-workspace/tests/apply.spec.ts rename to packages/client/ui-workspace/tests/apply.client.spec.ts diff --git a/packages/client/ui-workspace/tests/browser-styles.spec.ts b/packages/client/ui-workspace/tests/browser-styles.client.spec.ts similarity index 100% rename from packages/client/ui-workspace/tests/browser-styles.spec.ts rename to packages/client/ui-workspace/tests/browser-styles.client.spec.ts diff --git a/packages/client/ui-workspace/tests/invariant.spec.ts b/packages/client/ui-workspace/tests/invariant.client.spec.ts similarity index 100% rename from packages/client/ui-workspace/tests/invariant.spec.ts rename to packages/client/ui-workspace/tests/invariant.client.spec.ts diff --git a/packages/client/ui-workspace/tests/rename-assembly.spec.tsx b/packages/client/ui-workspace/tests/rename-assembly.client.spec.tsx similarity index 100% rename from packages/client/ui-workspace/tests/rename-assembly.spec.tsx rename to packages/client/ui-workspace/tests/rename-assembly.client.spec.tsx diff --git a/packages/client/ui-workspace/tests/rows.spec.tsx b/packages/client/ui-workspace/tests/rows.client.spec.tsx similarity index 100% rename from packages/client/ui-workspace/tests/rows.spec.tsx rename to packages/client/ui-workspace/tests/rows.client.spec.tsx diff --git a/packages/client/ui-workspace/tests/tree.spec.ts b/packages/client/ui-workspace/tests/tree.client.spec.ts similarity index 100% rename from packages/client/ui-workspace/tests/tree.spec.ts rename to packages/client/ui-workspace/tests/tree.client.spec.ts diff --git a/packages/client/ui-workspace/tests/workspace-browser.spec.tsx b/packages/client/ui-workspace/tests/workspace-browser.client.spec.tsx similarity index 100% rename from packages/client/ui-workspace/tests/workspace-browser.spec.tsx rename to packages/client/ui-workspace/tests/workspace-browser.client.spec.tsx diff --git a/packages/client/ui-workspace/tests/workspace-picker.spec.tsx b/packages/client/ui-workspace/tests/workspace-picker.client.spec.tsx similarity index 100% rename from packages/client/ui-workspace/tests/workspace-picker.spec.tsx rename to packages/client/ui-workspace/tests/workspace-picker.client.spec.tsx diff --git a/packages/client/web-react/tests/bind.spec.tsx b/packages/client/web-react/tests/bind.client.spec.tsx similarity index 100% rename from packages/client/web-react/tests/bind.spec.tsx rename to packages/client/web-react/tests/bind.client.spec.tsx diff --git a/packages/client/web-react/tests/scoped-slots-real-core.spec.tsx b/packages/client/web-react/tests/scoped-slots-real-core.client.spec.tsx similarity index 100% rename from packages/client/web-react/tests/scoped-slots-real-core.spec.tsx rename to packages/client/web-react/tests/scoped-slots-real-core.client.spec.tsx diff --git a/packages/client/web-react/tests/scoped-slots.spec.tsx b/packages/client/web-react/tests/scoped-slots.client.spec.tsx similarity index 100% rename from packages/client/web-react/tests/scoped-slots.spec.tsx rename to packages/client/web-react/tests/scoped-slots.client.spec.tsx diff --git a/packages/client/web-react/tests/session-provider.spec.tsx b/packages/client/web-react/tests/session-provider.client.spec.tsx similarity index 100% rename from packages/client/web-react/tests/session-provider.spec.tsx rename to packages/client/web-react/tests/session-provider.client.spec.tsx diff --git a/packages/client/web-react/tests/stale-authorization.spec.tsx b/packages/client/web-react/tests/stale-authorization.client.spec.tsx similarity index 100% rename from packages/client/web-react/tests/stale-authorization.spec.tsx rename to packages/client/web-react/tests/stale-authorization.client.spec.tsx diff --git a/packages/client/web-react/tests/use-invoke.spec.tsx b/packages/client/web-react/tests/use-invoke.client.spec.tsx similarity index 100% rename from packages/client/web-react/tests/use-invoke.spec.tsx rename to packages/client/web-react/tests/use-invoke.client.spec.tsx diff --git a/packages/client/web-react/tests/use-projection.spec.tsx b/packages/client/web-react/tests/use-projection.client.spec.tsx similarity index 100% rename from packages/client/web-react/tests/use-projection.spec.tsx rename to packages/client/web-react/tests/use-projection.client.spec.tsx diff --git a/packages/client/web/tests/app-root.spec.tsx b/packages/client/web/tests/app-root.client.spec.tsx similarity index 100% rename from packages/client/web/tests/app-root.spec.tsx rename to packages/client/web/tests/app-root.client.spec.tsx diff --git a/packages/client/web/tests/app-shell.spec.tsx b/packages/client/web/tests/app-shell.client.spec.tsx similarity index 100% rename from packages/client/web/tests/app-shell.spec.tsx rename to packages/client/web/tests/app-shell.client.spec.tsx diff --git a/packages/client/web/tests/app.spec.tsx b/packages/client/web/tests/app.client.spec.tsx similarity index 100% rename from packages/client/web/tests/app.spec.tsx rename to packages/client/web/tests/app.client.spec.tsx diff --git a/packages/client/web/tests/base-styles.spec.ts b/packages/client/web/tests/base-styles.client.spec.ts similarity index 100% rename from packages/client/web/tests/base-styles.spec.ts rename to packages/client/web/tests/base-styles.client.spec.ts diff --git a/packages/client/web/tests/document-title.spec.tsx b/packages/client/web/tests/document-title.client.spec.tsx similarity index 100% rename from packages/client/web/tests/document-title.spec.tsx rename to packages/client/web/tests/document-title.client.spec.tsx diff --git a/scripts/rescope-vendor.ts b/scripts/rescope-vendor.ts index d6f84efd63..3d3410e09a 100644 --- a/scripts/rescope-vendor.ts +++ b/scripts/rescope-vendor.ts @@ -89,9 +89,9 @@ const GENERIC_SKIPS: readonly GenericSkip[] = [ // the creator flow stages and which id the roster reports. { file: 'packages/client/ui-agent-preset/src/client/AgentPresetSection.tsx', upstream: ['cordis'] }, { file: 'packages/client/ui-agent-preset/src/client/index.ts', upstream: ['cordis'] }, - { file: 'packages/client/ui-agent-preset/tests/apply.spec.ts', upstream: ['cordis'] }, - { file: 'packages/client/ui-agent-preset/tests/locales.spec.ts', upstream: ['cordis'] }, - { file: 'packages/client/ui-agent-preset/tests/section.spec.tsx', upstream: ['cordis'] }, + { file: 'packages/client/ui-agent-preset/tests/apply.client.spec.ts', upstream: ['cordis'] }, + { file: 'packages/client/ui-agent-preset/tests/locales.client.spec.ts', upstream: ['cordis'] }, + { file: 'packages/client/ui-agent-preset/tests/section.client.spec.tsx', upstream: ['cordis'] }, { file: 'apps/cli/tests/web-agent-presets.e2e.ts', upstream: ['cordis'] }, { file: 'apps/web/tests/agent-preset-authoring.e2e.ts', upstream: ['cordis'] }, { file: 'packages/preset/agent-presets/tests/session.spec.ts', upstream: ['cordis'] }, @@ -126,7 +126,7 @@ const POSTCONDITIONS: readonly PostCondition[] = [ { file: 'knip.json', text: '@cordisjs', count: 0 }, { file: 'pnpm-workspace.yaml', text: 'cordis@4.0.0-rc.7', count: 0 }, // The preset ids in this table are product data, not package names. - { file: 'packages/client/ui-agent-preset/tests/locales.spec.ts', text: '[\'cordis\', \'presetCordisName\'', count: 1 }, + { file: 'packages/client/ui-agent-preset/tests/locales.client.spec.ts', text: '[\'cordis\', \'presetCordisName\'', count: 1 }, // The preset id the shipped composition documents to its own model. { file: 'apps/cli/config/agent-presets/cordis/agent.cordis.yml', text: 'The `cordis` agent preset', count: 1 }, { file: 'apps/cli/config/agent-presets/cordis/agent.cordis.yml', text: 'corrupting the `cordis` preset', count: 1 }, @@ -330,7 +330,7 @@ const VENDORED_LIBRARY = /^@deepseek-ai\\/(cosmokit|schemastery)(\\/|$)/ { // The real package references in files whose other `cordis` strings are preset ids. id: 'agent-preset-spec-framework-import', - file: 'packages/client/ui-agent-preset/tests/apply.spec.ts', + file: 'packages/client/ui-agent-preset/tests/apply.client.spec.ts', find: "import { Context } from 'cordis'", replace: "import { Context } from '@deepseek-ai/cordis'", expect: 1, diff --git a/tsconfig.client.json b/tsconfig.client.json index 9e2a7778d7..ce48a77ea9 100644 --- a/tsconfig.client.json +++ b/tsconfig.client.json @@ -24,6 +24,12 @@ "scripts/client-bundle-css.spec.ts", "scripts/client-bundle-purity.spec.ts" ], + // A `*.host.spec.ts` covers the Host half of a split client package and + // belongs to the host aggregate, which excludes this program's `*.client.*` + // in turn. `exclude` wins over `include`, so the test glob above stays broad. + "exclude": [ + "packages/client/*/tests/**/*.host.spec.ts" + ], "references": [ // Shared leaf: web e2e boots the real host webserver (fixture + real-host // smoke policy). webserver has zero workspace deps and no cordis merge, @@ -44,9 +50,6 @@ { "path": "./packages/client/modules" }, { "path": "./packages/client/hmr" }, { "path": "./packages/client/connection/tsconfig.client.json" }, - // The carrier's node-half spec rides this aggregate's package test glob, so - // its Host face is referenced here too — the mirror of the webserver leaf. - { "path": "./packages/client/connection/tsconfig.host.json" }, { "path": "./packages/typert/registry" }, { "path": "./packages/api/gateway/tsconfig.client.json" }, { "path": "./packages/api/remotes/tsconfig.client.json" }, diff --git a/tsconfig.host.json b/tsconfig.host.json index ef02fc557f..d4e7f7ba3b 100644 --- a/tsconfig.host.json +++ b/tsconfig.host.json @@ -87,8 +87,17 @@ "website/**/*.ts", "website/.vitepress/**/*.ts" ], + // Under packages/client a test file names the face it covers: `*.client.*` + // belongs to the Client aggregate, `*.host.spec.ts` to this one. The two + // suffixes are mutually exclusive, so each aggregate excludes the other's + // and the package test glob above needs no per-file entry. "exclude": [ - "packages/client/**", + "packages/client/*/src/**", + "packages/client/*/tests/**/*.client.ts", + "packages/client/*/tests/**/*.client.tsx", + "packages/client/*/tests/**/*.client.spec.ts", + "packages/client/*/tests/**/*.client.spec.tsx", + "packages/client/tsdown.client.ts", "packages/api/gateway/tests/client.spec.ts", "scripts/client-bundle-css.spec.ts", "packages/typert/generator/tests/fixtures/**",