Files
deepseek-harness/packages/test-support
imccyu 6e77ea0131 feat(web): boot past failed optional client plugins (#7733)
* feat(web): boot past failed optional client plugins

The Web client boot audit now follows Host startup strictness. An
inactive entry on the global required list (module system, Session
transport, renderer, application frame, Session view, and sidebar)
still rejects startup and the report marks the required entries.
Other inactive entries produce one console warning and the
application mounts without them. The boot page no longer draws a
failed entry before the audit decides.

* fix(web): audit boot entries whose creation rejects and name activation errors

ClientEntries.start() now logs a row whose Loader creation rejects, such
as a module that exports no plugin, and leaves it inactive for the boot
audit, as the Host Loader group does. The audit awaits only failed
fibers to report their recorded activation error. Notes, READMEs, and
the Web client subsystem page describe the browser boot audit; tests
cover invalid exports, carrier presentation of optional failures, and
required names absent from the boot graph.

* test(web): fail test carriers and e2e on inactive client entries

The product boot only warns about inactive entries outside its required
list, but tests must still surface every plugin that fails. TestClient
and createClientTest now require every roster entry to activate unless
a case passes allowInactiveEntries. The watchConsole tripwire, the
real-host smoke, and the assembled jsdom boot treat a web boot warning
as a failure with no opt-out.

Docs: the Web README names Session control, notes that an entry without
a fiber is reported as an import failure like the Host audit's "failed
to import", and the startup strictness note lists the browser tests.
2026-11-02 16:20:50 +00:00
..
2026-10-28 02:03:15 +08:00
2026-10-28 02:03:15 +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
tool-testkit Defines tool fixtures and exercises invocation or executor behavior in tests
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.