Files
deepseek-harness/tsconfig.client.json
Yichen Jiang 9592c8f271 feat(schema-form): schema-driven React form renderer package
@deepseek-ai/dsh-client-schema-form rehydrates the wire's serialized
schemastery envelope (new Schema(json)) and edits a draft user section
against it: presence-in-draft marks a field overridden with a per-field
reset, inherited values render as placeholders, role('secret') slots are
write-only with configured-state placeholders from the wire's secrets
list, dict adds take a union-typed sKey as their vocabulary, and any
node the renderer cannot faithfully edit falls back to a read-only view
instead of silently disappearing. renderField(context) is the role hook
the Models page will use for the credential-ref control; validateDraft
runs the same rehydrated validator the host uses, so the browser and
host judge one schema.
2026-07-30 00:24:19 +08:00

61 lines
2.7 KiB
JSON

{
// Client-side typecheck aggregate: packages/client tests (.ts and .tsx).
// Split from the host aggregate because both sides merge cordis Context
// under the same keys (sessions, loader) with different services; shared
// leaves (session/llm/tools/apiproxy/...) build once and are referenced by
// both programs through each client package's own references.
"extends": "./tsconfig.base.client.json",
"compilerOptions": {
"noEmit": true,
"rewriteRelativeImportExtensions": false,
// Tests execute under vitest on node (e2e files spawn processes); browser
// purity of package src is each package's own tsconfig plus
// scripts/client-bundle-purity.spec.ts.
"types": ["node"]
},
"include": [
// Source-subpath test imports can arrive through workspace links whose
// realpath semantics vary by host. Load package CSS declarations directly.
"packages/client/*/src/css-modules.d.ts",
"packages/client/*/tests/**/*.ts",
"packages/client/*/tests/**/*.tsx",
"packages/client/tsdown.client.ts",
"scripts/client-bundle-purity.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,
// so it cannot drag host-side Context augmentation into this program.
{ "path": "./packages/host/webserver" },
{ "path": "./packages/client/ui-slots" },
{ "path": "./packages/client/schema-form" },
{ "path": "./packages/client/ui-primitives" },
{ "path": "./packages/client/web-react" },
{ "path": "./packages/client/modules" },
{ "path": "./packages/client/hmr" },
{ "path": "./packages/client/connection" },
{ "path": "./packages/client/runtime" },
{ "path": "./packages/client/test-runtime" },
{ "path": "./packages/client/ui-layout" },
{ "path": "./packages/client/ui-sidebar" },
{ "path": "./packages/client/ui-conversation" },
{ "path": "./packages/client/ui-workspace" },
{ "path": "./packages/client/ui-slash" },
{ "path": "./packages/client/ui-command" },
{ "path": "./packages/client/ui-skill" },
{ "path": "./packages/client/ui-subagent" },
{ "path": "./packages/client/ui-goal" },
{ "path": "./packages/client/ui-model" },
{ "path": "./packages/client/ui-plan" },
{ "path": "./packages/client/ui-question" },
{ "path": "./packages/client/ui-trajectory" },
{ "path": "./packages/client/ui-theme" },
{ "path": "./packages/client/ui-settings" },
{ "path": "./packages/client/ui-settings-general" },
{ "path": "./packages/client/ui-models" },
{ "path": "./packages/client/locale" },
{ "path": "./packages/client/web" },
{ "path": "./apps/web" }
]
}