Files
deepseek-harness/packages/test-support
imccyu e4410b2764 perf(client): read each tsdown preset's own package manifest
The client tsdown presets found a package's own manifest by name: a glob of
every packages/*/*/package.json, parsed until the name matched. tsdown's
native config loader imports each package config without module cache, so
the module-level cache never hit and all 82 configs repeated the glob
(40-125 ms each) synchronously on tsdown's main thread, where it delayed
every other package build. It was 34.5% of the client pass's main thread.

- clientBundle, staticLinked and clientLibrary take the package directory
  (import.meta.dirname at every call site) and read <dir>/package.json
  once; the package name, loader id and externals come from that manifest.
- A missing, unreadable or nameless manifest throws an actionable error.
- The glob, the name search and the module-level caches are removed.

tsdown client pass 12.78 s -> 8.73 s (median of 3 interleaved runs each,
-31.7%); all 11,566 lib outputs byte-identical; all 82 configs resolve the
same externals and banners.

Refs #5852
2026-10-11 18:19:23 +08:00
..
2026-10-09 15:13:40 +08:00
2026-10-09 15:13:40 +08:00

description, kind
description kind
The test-support group map: keyless test harnesses, LLM mock and replay servers, and Loader smoke helpers for developers writing and running repository tests. package-group

packages/test-support

English | 中文

Summary

The test-support group gives repository tests deterministic, keyless ways to exercise the real product. It includes Loader application harnesses, session-log snapshot adapters, a replay LLM plugin, and a scriptable OpenAI-compatible fault server. Each package is support-tier infrastructure; a package moves out of this group when it gains a product contract and product consumers.

Table of Contents


Packages

Package Role
session-snapshot Provides session-log snapshot support and protocol adapters for profile-driven tests
agent-loop-testkit Provides the shared prerequisite services for tests that exercise the concrete AgentLoop
client-runtime Provides the jsdom slot test bench for browser feature specs
remote-mock Provides the endpoint-named Typert Remote mock and the Connection carrier face whole-client specs install
loader-smoke Boots Loader-composed applications and drives fixture turns for smoke tests
llm-mock-server Provides a scriptable OpenAI-compatible fault server for recovery tests
llm-replay Replays recorded model streams for keyless tests and demos

  • Testing policy — the keyless snapshot tier these harnesses serve and when it is required.
  • Package groups — how support groups relate to the product groups.

Dev Note

Working context for maintainers — click to expand

None.