mirror of
https://github.com/deepseek-ai/deepseek-harness
synced 2026-08-15 21:04:50 +00:00
Reorganize packages into a modular hierarchy
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.
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
import { defineConfig } from 'tsdown'
|
||||
|
||||
/**
|
||||
* JS bundling for all workspace packages (vendor/* + packages/*).
|
||||
* JS bundling for all workspace packages (vendor and the packages hierarchy).
|
||||
* Declarations are NOT produced here — `tsc -b tsconfig.build.json` owns
|
||||
* .d.ts output (composite project references); hence `dts: false` and
|
||||
* `clean: false` (lib/ already holds tsc's declarations).
|
||||
@@ -10,9 +10,10 @@ import { defineConfig } from 'tsdown'
|
||||
* (schemastery: dual ESM+CJS; logger-console: extra browser entry).
|
||||
*/
|
||||
export default defineConfig({
|
||||
// Explicit globs: `workspace: true` would also discover examples/* (any
|
||||
// package.json), but only vendor/* and packages/* are pnpm workspaces.
|
||||
workspace: ['vendor/*', 'packages/*'],
|
||||
// Explicit globs: `workspace: true` would also discover examples (any
|
||||
// package.json), but only vendor and the packages hierarchy are pnpm
|
||||
// workspaces.
|
||||
workspace: ['vendor/*', 'packages/*/*'],
|
||||
entry: ['src/index.ts'],
|
||||
outDir: 'lib',
|
||||
format: ['esm'],
|
||||
|
||||
Reference in New Issue
Block a user