refactor(paths): collapse harness home resolution into one resolver

Delete @deepseek-ai/dsh-home and make dsh-paths the sole owner of the
single-root harness home ($DSH_HOME || ~/.dsh). Migrate tool-bash,
skill-local, and agent-spine-demo off dsh-home, and fold telemetry's
divergent globalConfigDir onto the shared resolver, dropping its second
XDG/APPDATA policy and the deepseek-harness namespace so the anonymous
id lives under the harness home. Add dshHomeDisplay() for symbolic
user-facing paths, replacing workspace-context's bespoke check.
This commit is contained in:
Turtle
2026-07-21 13:52:00 +08:00
parent 9a5c81f9e5
commit 92e0d0e04f
39 changed files with 188 additions and 227 deletions

28
pnpm-lock.yaml generated
View File

@@ -314,12 +314,12 @@ importers:
'@deepseek-ai/dsh-bash-local':
specifier: workspace:^
version: link:../bash-local
'@deepseek-ai/dsh-home':
specifier: workspace:^
version: link:../../util/home
'@deepseek-ai/dsh-llm':
specifier: workspace:^
version: link:../../llm/llm
'@deepseek-ai/dsh-paths':
specifier: workspace:^
version: link:../../util/paths
'@deepseek-ai/dsh-sandbox':
specifier: workspace:^
version: link:../../sandbox/sandbox
@@ -777,9 +777,6 @@ importers:
'@deepseek-ai/dsh-goal-session':
specifier: workspace:^
version: link:../../goal/goal-session
'@deepseek-ai/dsh-home':
specifier: workspace:^
version: link:../../util/home
'@deepseek-ai/dsh-invariants':
specifier: workspace:^
version: link:../../support/invariants
@@ -789,6 +786,9 @@ importers:
'@deepseek-ai/dsh-llm-retry':
specifier: workspace:^
version: link:../../llm/llm-retry
'@deepseek-ai/dsh-paths':
specifier: workspace:^
version: link:../../util/paths
'@deepseek-ai/dsh-session':
specifier: workspace:^
version: link:../../core/session
@@ -1604,6 +1604,9 @@ importers:
'@deepseek-ai/dsh-brand':
specifier: workspace:^
version: link:../../util/brand
'@deepseek-ai/dsh-paths':
specifier: workspace:^
version: link:../../util/paths
cordis:
specifier: ^4.0.0-rc.7
version: 4.0.0-rc.7(@cordisjs/plugin-include@1.0.4)(@cordisjs/plugin-loader@1.0.0-rc.5)
@@ -1690,9 +1693,9 @@ importers:
'@deepseek-ai/dsh-fs':
specifier: workspace:^
version: link:../../fs/fs
'@deepseek-ai/dsh-home':
'@deepseek-ai/dsh-paths':
specifier: workspace:^
version: link:../../util/home
version: link:../../util/paths
'@deepseek-ai/dsh-skill':
specifier: workspace:^
version: link:../skill
@@ -2495,12 +2498,6 @@ importers:
specifier: ^4.0.0-rc.7
version: 4.0.0-rc.7(@cordisjs/plugin-include@1.0.4)(@cordisjs/plugin-loader@1.0.0-rc.5)
packages/util/home:
devDependencies:
cordis:
specifier: ^4.0.0-rc.6
version: 4.0.0-rc.7(@cordisjs/plugin-include@1.0.4)(@cordisjs/plugin-loader@1.0.0-rc.5)
packages/util/paths:
devDependencies:
cordis:
@@ -2854,9 +2851,6 @@ importers:
'@deepseek-ai/dsh-goal-session':
specifier: workspace:^
version: link:../../packages/goal/goal-session
'@deepseek-ai/dsh-home':
specifier: workspace:^
version: link:../../packages/util/home
'@deepseek-ai/dsh-hook-protocol':
specifier: workspace:^
version: link:../../packages/hooks/hook-protocol