mirror of
https://github.com/deepseek-ai/deepseek-harness
synced 2026-08-15 21:04:50 +00:00
Move the 18 flat packages/<name> packages into role-grouped dirs: core/, llm/, bash/, session-persistence/, ui/, support/. Group dirs are pure containers; each package keeps its @deepseek-ai/dsh-* name. Collapse the per-package tsconfig paths maps (base + typecheck) into one @deepseek-ai/dsh-* wildcard with a candidate per group, and derive the publint list from the hierarchy. Update all depth-coupled globs/configs (workspace, tsdown, vitest, eslint, knip, tsconfig includes/refs, per-package tsconfigs, generators, doc-script scopes, type-equiv manifest) and the cross-package/script relative imports in tests. Fix doc-typecheck's workspacePaths() to parse tsconfig JSONC via the TypeScript API instead of a regex comment-strip, which corrupted the new wildcard `/*/` path candidates. WIP: doc cross-links and package/RFC docs still to update.
53 lines
2.1 KiB
JSON
53 lines
2.1 KiB
JSON
{
|
|
"compilerOptions": {
|
|
"target": "es2024",
|
|
"module": "esnext",
|
|
"moduleResolution": "bundler",
|
|
"declaration": true,
|
|
"emitDeclarationOnly": true,
|
|
"composite": true,
|
|
"incremental": true,
|
|
"skipLibCheck": true,
|
|
"esModuleInterop": true,
|
|
"allowImportingTsExtensions": true,
|
|
"verbatimModuleSyntax": false,
|
|
"strict": true,
|
|
"noUncheckedIndexedAccess": true,
|
|
"exactOptionalPropertyTypes": true,
|
|
"noImplicitOverride": true,
|
|
"noFallthroughCasesInSwitch": true,
|
|
"noUnusedLocals": true,
|
|
"noUnusedParameters": true,
|
|
"types": ["node"],
|
|
// Source-level resolution for the build graph: without this, a fresh
|
|
// checkout's first `tsc -b` resolves sibling vendor plugins through their
|
|
// package.json types (vendor/*/lib/*.d.ts) which don't exist yet — TS2307
|
|
// until a second run. Derived configs that want lib resolution
|
|
// (tsconfig.typecheck.json) override this map wholesale.
|
|
"paths": {
|
|
"cordis": ["./vendor/cordis/src"],
|
|
"cosmokit": ["./vendor/cosmokit/src"],
|
|
"schemastery": ["./vendor/schemastery/src"],
|
|
"@cordisjs/plugin-loader": ["./vendor/loader/src"],
|
|
"@cordisjs/plugin-include": ["./vendor/include/src"],
|
|
"@cordisjs/plugin-group": ["./vendor/group/src"],
|
|
"@cordisjs/plugin-timer": ["./vendor/timer/src"],
|
|
"@cordisjs/plugin-hmr": ["./vendor/hmr/src"],
|
|
"@cordisjs/plugin-logger-console": ["./vendor/logger-console/src"],
|
|
// One wildcard maps every @deepseek-ai/dsh-<name> to its source. Package
|
|
// dir names are unique across groups, so first-on-disk-wins resolution is
|
|
// unambiguous; adding a package under an existing group needs no edit
|
|
// here. The build graph's project references (tsconfig.build.json) stay
|
|
// explicit — TS project references have no wildcard form.
|
|
"@deepseek-ai/dsh-*": [
|
|
"./packages/core/*/src",
|
|
"./packages/llm/*/src",
|
|
"./packages/bash/*/src",
|
|
"./packages/session-persistence/*/src",
|
|
"./packages/ui/*/src",
|
|
"./packages/support/*/src"
|
|
]
|
|
}
|
|
}
|
|
}
|