Files
deepseek-harness/apps/web/tsconfig.json
T
turtle1999 879ad372ac feat(hmr): replace plugins whose package files changed during profile recomposition
With HMR, installing, enabling, disabling and removing bundles take effect live. Each profile recomposition compares
the loaded modules below the profile directory and its linked targets with disk, stops the plugins whose files
changed, and recomposes the profile through app-boot's recomposeProfile(): the rows the next generation drops are
removed first, the latest runtime resolution is published once, and the generation is applied and judged. Afterwards
HMR evicts the modules below the mappings the recomposition dropped.

- app-boot: recomposeProfile(); PluginPackages.resolution; ResolutionRestartRequired; the resolver accepts in-place
  version changes and relinks, and relocates Node's cached link real paths.
- plugin-manager: with HMR, installBundle refuses an installed package (already-installed), so an upgrade is a
  removal and an installation; every restart-required result carries a restartReason; removal uses the registry the
  package was installed from.
- ui-plugin-manager: the Official Update removes and then installs; restart prompts name their reason.
2026-10-13 22:15:57 +08:00

230 lines
7.9 KiB
JSON

{
"extends": "../../tsconfig.base.json",
"compilerOptions": {
"rootDir": ".",
"outDir": "lib/types",
"jsx": "react-jsx",
"lib": [
"ES2024",
"DOM",
"DOM.Iterable"
],
"types": [
"node"
]
},
"include": [
"src",
"tests"
],
// The web e2e lane (scaffold + replay specs) boots the host spine and reads
// its Context merges — host-plane programs, checked in tsconfig.host.json;
// this client-registered project must not also hold them (one program
// cannot see both sides of the cordis Context merges).
"exclude": [
"tests/collapse-timing.e2e.ts",
"tests/notice-wake-tail.e2e.ts",
"tests/chat-flow-layout.e2e.ts",
"tests/layout-bottom.e2e.ts",
"tests/shortcuts-desktop.e2e.ts",
"tests/shortcuts-workspace.e2e.ts",
"tests/shortcuts-panels.e2e.ts",
"tests/shortcuts-fixed.e2e.ts",
"tests/shortcuts.e2e.ts",
"tests/composer-shortcuts.e2e.ts",
"tests/default-product-isolation.e2e.ts",
"tests/diff-context.e2e.ts",
"tests/code-card-layout.e2e.ts",
"tests/code-language.snapshot.ts",
"tests/scaffold.ts",
"tests/connection-recovery.e2e.ts",
"tests/server-restart.e2e.ts",
"tests/voice-input.e2e.ts",
"tests/cot-translation.e2e.ts",
"tests/cot-translation-paid.e2e.ts",
"tests/voice-setup.e2e.ts",
"tests/voice-download.e2e.ts",
"tests/prefix-proxy.ts",
"tests/auto-review-fixture.ts",
"tests/scaffold-generation.spec.ts",
"tests/scaffold-hermetic.e2e.ts",
"tests/startup-rpc-budget.e2e.ts",
"tests/minimal-preset.snapshot.ts",
"tests/message-feedback-protocol.snapshot.ts",
"tests/preset-migration.snapshot.ts",
"tests/subagent-fork-schedule.snapshot.ts",
"tests/live-interactions.e2e.ts",
"tests/question-composer.e2e.ts",
"tests/approval-composer.e2e.ts",
"tests/ptc-escalation.e2e.ts",
"tests/standalone-string-editor.e2e.ts",
"tests/official-subagent-bundle.e2e.ts",
"tests/plan-control-row.e2e.ts",
"tests/plan-review.e2e.ts",
"tests/steering.e2e.ts",
"tests/navigation-panes.e2e.ts",
"tests/shell-command-details.e2e.ts",
"tests/terminal-command-browser.ts",
"tests/focus-rings.e2e.ts",
"tests/chat-scroll-fixture.ts",
"tests/trajectory-virtualization.e2e.ts",
"tests/lifecycle-chrome.e2e.ts",
"tests/reasoning-preview.e2e.ts",
"tests/details-session-lifecycle.e2e.ts",
"tests/sessionless-header.e2e.ts",
"tests/document-preview.e2e.ts",
"tests/excel-opc.e2e.ts",
"tests/office-fixture.ts",
"tests/sidebar-browser.e2e.ts",
"tests/jobs-menu-layering.e2e.ts",
"tests/plugin-config.e2e.ts",
"tests/input-plugin-extensions.e2e.ts",
"tests/plugin-manager.e2e.ts",
"tests/schedule-header.e2e.ts",
"tests/worktree-opt-in.e2e.ts",
"tests/session-inspector.e2e.ts",
"tests/shared-inspector.e2e.ts",
"tests/devtools-frontend.e2e.ts",
"tests/inspector-panels.e2e.ts",
"tests/inspector-source-build.e2e.ts",
"tests/plugin-install-cancel.e2e.ts",
"tests/plugin-install-approve.e2e.ts",
"tests/plugin-hmr-lifecycle.e2e.ts",
"tests/plugin-install-registry.e2e.ts",
"tests/plugin-install-github.e2e.ts",
"tests/client-plugin-live.e2e.ts",
"tests/draft-initialization.e2e.ts",
"tests/settings-chrome.e2e.ts",
"tests/session-log-upload.e2e.ts",
"tests/caption-overlays.e2e.ts",
"tests/settings-appearance.e2e.ts",
"tests/menu-material.e2e.ts",
"tests/desktop-locale.e2e.ts",
"tests/settings-import.e2e.ts",
"tests/desktop-updates.e2e.ts",
"tests/developer-tools-settings.e2e.ts",
"tests/models-settings.e2e.ts",
"tests/deepseek-messages-settings.e2e.ts",
"tests/deepseek-messages-chat.e2e.ts",
"tests/models-settings-recovery.e2e.ts",
"tests/default-model.e2e.ts",
"tests/model-menu-observer.e2e.ts",
"tests/default-workspace.e2e.ts",
"tests/new-session-refused.e2e.ts",
"tests/github-ready-review.e2e.ts",
"tests/streaming-fence-highlight.e2e.ts",
"tests/declared-reasoning.e2e.ts",
"tests/onboarding-deepseek-config.e2e.ts",
"tests/onboarding-native.e2e.ts",
"tests/desktop-onboarding.e2e.ts",
"tests/bonus-notice.e2e.ts",
"tests/account-login.e2e.ts",
"tests/onboarding-usable-provider.e2e.ts",
"tests/remote-settings.e2e.ts",
"tests/public-mount.e2e.ts",
"tests/workspace-new-session-folding.e2e.ts",
"tests/workspace-management.e2e.ts",
"tests/workspace-recency.e2e.ts",
"tests/session-unarchive.e2e.ts",
"tests/session-archive-active.e2e.ts",
"tests/replay-round-trip.e2e.ts",
"tests/session-replay-reload.e2e.ts",
"tests/hmr-live.e2e.ts",
"tests/preview-boot.e2e.ts",
"tests/seeded-history.e2e.ts",
"tests/stats-paged-history.e2e.ts",
"tests/sidebar-scrollbar.e2e.ts",
"tests/sidebar-title-hover-scroll.e2e.ts",
"tests/rail-search-expand.e2e.ts",
"tests/conversation-column-overflow.e2e.ts",
"tests/ptc-round.e2e.ts",
"tests/present.e2e.ts",
"tests/present-svg.e2e.ts",
"tests/composer-draft-scroll.e2e.ts",
"tests/composer-focus.e2e.ts",
"tests/composer-placeholder.e2e.ts",
"tests/context-meter.e2e.ts",
"tests/cordis-tool-round.e2e.ts",
"tests/web-search-round.e2e.ts",
"tests/file-upload-round.e2e.ts",
"tests/message-actions.e2e.ts",
"tests/open-in-app-ssh.e2e.ts",
"tests/fork-mid-turn.e2e.ts",
"tests/message-feedback.e2e.ts",
"tests/markdown-images.e2e.ts",
"tests/markdown-file-links.e2e.ts",
"tests/user-text-secret-mask.e2e.ts",
"tests/reference-composer.e2e.ts",
"tests/markdown-wide-table.e2e.ts",
"tests/thinking-markdown.e2e.ts",
"tests/math-rendering.e2e.ts",
"tests/markdown-cjk-strong.e2e.ts",
"tests/markdown-inline-code-links.e2e.ts",
"tests/clickable-links-gallery.e2e.ts",
"tests/queue-actions.e2e.ts",
"tests/idle-submission-handoff.e2e.ts",
"tests/cold-blank-session.e2e.ts",
"tests/blank-writer-reuse.e2e.ts",
"tests/blank-preset-reuse.e2e.ts",
"tests/queue-image.e2e.ts",
"tests/skill-invocation-policy.e2e.ts",
"tests/skill-user-invoke.e2e.ts",
"tests/permission-policy-context.e2e.ts",
"tests/access-confirmation.e2e.ts",
"tests/agent-preset-selection.e2e.ts",
"tests/agent-preset-authoring.e2e.ts",
"tests/shipped-composition.e2e.ts",
"tests/schedule-after.e2e.ts",
"tests/feedback-command.e2e.ts",
"tests/feedback-release.e2e.ts",
"tests/agent-team-panel.e2e.ts",
"tests/sidebar-right.e2e.ts",
"tests/sidebar-terminal.e2e.ts",
"tests/startup-auto-selection.e2e.ts",
"tests/changed-files-turn.e2e.ts",
"tests/produced-file-mentions.e2e.ts",
"tests/goal-bar.e2e.ts",
"tests/goal-command-presentation.e2e.ts",
"tests/subagent-conversation.e2e.ts",
"tests/subagent-interrupt.e2e.ts",
"tests/subagent-interrupt-ui.e2e.ts",
"tests/sidebar-subagent-activity.e2e.ts",
"tests/background-job-list.e2e.ts",
"tests/live-job-stream.e2e.ts",
"tests/auto-review-approval.e2e.ts",
"tests/auto-review-denial.e2e.ts",
"tests/bash-abort-row.e2e.ts",
"tests/skill-tool-row.e2e.ts",
"tests/tool-details.e2e.ts",
"tests/turn-tail-actions.e2e.ts",
"tests/goal-multi-turn-actions.e2e.ts",
"tests/chat-scroll-fixture.ts",
"tests/chat-scroll-contract.e2e.ts",
"tests/chat-long-interactions.e2e.ts",
"tests/chat-continuous-conversation.e2e.ts",
"tests/composer-tab-geometry.e2e.ts",
"tests/window-drag-coverage.e2e.ts",
"tests/complex-history.perf.ts",
"tests/pwsh-terminal.e2e.ts",
"tests/workflow-run.e2e.ts"
],
"references": [
{ "path": "../../packages/experimental/auto-review" },
{
"path": "../../packages/client/store"
},
{
"path": "../../packages/client/web"
},
{
"path": "../../packages/client/modules"
},
{
"path": "../../packages/test-support/client-runtime"
},
{
"path": "../../packages/test-support/remote-mock"
}
]
}