@dsh-workbench/core 0.3.10 → 1.0.0-beta.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +148 -105
- package/bin/dsh-workbench +132 -31
- package/bin/dsh-workbench.cmd +5 -0
- package/bin/opencli-isolated +3 -2
- package/bin/opencli-isolated.mjs +44 -0
- package/bin/opencli-node-mode.cjs +1 -0
- package/bin/seed-workshop-windows.mjs +307 -0
- package/client.js +8192 -4904
- package/cordis.patch.yml +62 -37
- package/dist/client/client.body.js +8192 -4904
- package/dist/client/index.js +7186 -3898
- package/dist/host/index.js +7277 -6956
- package/dist/types/app/client.d.ts +3 -1
- package/dist/types/app/host.d.ts +2 -1
- package/dist/types/app/layouts/approval-detail.d.ts +3 -0
- package/dist/types/app/layouts/env-gate/boot-gate.d.ts +1 -12
- package/dist/types/app/layouts/env-gate/gate-text.d.ts +2 -1
- package/dist/types/app/layouts/market/DiscoverPanel.d.ts +8 -0
- package/dist/types/app/layouts/market/add-module-text.d.ts +1 -1
- package/dist/types/app/layouts/market/discover-categories.d.ts +8 -0
- package/dist/types/app/layouts/market/discover-confirm.d.ts +14 -0
- package/dist/types/app/layouts/market/discover-detail.d.ts +12 -0
- package/dist/types/app/layouts/market/discover-dialogs.d.ts +7 -0
- package/dist/types/app/layouts/market/discover-doc.d.ts +18 -0
- package/dist/types/app/layouts/market/discover-init-dialog.d.ts +10 -0
- package/dist/types/app/layouts/market/discover-rows.d.ts +24 -0
- package/dist/types/app/layouts/market/discover-sources-dialog.d.ts +16 -0
- package/dist/types/app/layouts/market/discover-states.d.ts +22 -0
- package/dist/types/app/layouts/market/discover-toolbar.d.ts +23 -0
- package/dist/types/app/layouts/market/discover-versions.d.ts +9 -0
- package/dist/types/app/layouts/market/discover-view.d.ts +38 -0
- package/dist/types/app/layouts/market/market-header.d.ts +13 -0
- package/dist/types/app/layouts/market/panel.d.ts +1 -1
- package/dist/types/app/layouts/market/use-add-module.d.ts +1 -1
- package/dist/types/app/layouts/market/use-discover.d.ts +72 -0
- package/dist/types/app/layouts/market/use-module-versions.d.ts +6 -2
- package/dist/types/app/layouts/rightbar/MarketView.d.ts +6 -3
- package/dist/types/app/layouts/rightbar/Rightbar.d.ts +1 -1
- package/dist/types/app/layouts/rightbar/board-shape.d.ts +1 -14
- package/dist/types/app/layouts/rightbar/market-act.d.ts +6 -3
- package/dist/types/app/layouts/rightbar/market-busy.d.ts +0 -22
- package/dist/types/app/layouts/rightbar/market-change.d.ts +1 -1
- package/dist/types/app/layouts/rightbar/market-hint.d.ts +1 -7
- package/dist/types/app/layouts/rightbar/market-plugin-rows.d.ts +0 -7
- package/dist/types/app/layouts/rightbar/market-row-icon.d.ts +1 -1
- package/dist/types/app/layouts/rightbar/market-row-types.d.ts +2 -2
- package/dist/types/app/layouts/rightbar/market-rows.d.ts +1 -1
- package/dist/types/app/layouts/rightbar/market-section-icon.d.ts +1 -1
- package/dist/types/app/layouts/rightbar/market-settle-hold.d.ts +2 -0
- package/dist/types/app/layouts/rightbar/market-settle.d.ts +17 -0
- package/dist/types/app/layouts/rightbar/market-shared-rows.d.ts +1 -1
- package/dist/types/app/layouts/rightbar/market-update-verdict.d.ts +31 -0
- package/dist/types/app/layouts/rightbar/market-view-text.d.ts +8 -1
- package/dist/types/app/layouts/rightbar/market-workbench-row.d.ts +1 -1
- package/dist/types/app/layouts/rightbar/store.d.ts +2 -0
- package/dist/types/app/layouts/sidebar/LongTaskDot.d.ts +6 -0
- package/dist/types/app/layouts/sidebar/LongTaskHover.d.ts +6 -0
- package/dist/types/app/layouts/sidebar/edition-boot.d.ts +6 -0
- package/dist/types/app/layouts/sidebar/edition.d.ts +5 -0
- package/dist/types/app/layouts/sidebar/use-attention.d.ts +0 -4
- package/dist/types/app/layouts/sidebar/workshop-preset.d.ts +2 -0
- package/dist/types/app/layouts/workbench-settings/AdapterSetItem.d.ts +5 -0
- package/dist/types/app/layouts/workbench-settings/ConfigSyncItem.d.ts +5 -0
- package/dist/types/app/layouts/workbench-settings/ConfigSyncRows.d.ts +11 -0
- package/dist/types/app/layouts/workbench-settings/NewWorkbenchItem.d.ts +5 -0
- package/dist/types/app/layouts/workbench-settings/SettingsItem.d.ts +8 -0
- package/dist/types/app/layouts/workbench-settings/SidebarEditionItem.d.ts +5 -0
- package/dist/types/app/layouts/workbench-settings/WorkbenchSettingsSection.d.ts +5 -0
- package/dist/types/app/units/manifests.d.ts +1 -1
- package/dist/types/{app/units → kernel/client}/registry.d.ts +1 -1
- package/dist/types/kernel/contract/bundle-install.d.ts +2 -0
- package/dist/types/kernel/contract/config-sync.d.ts +2 -0
- package/dist/types/kernel/contract/diy.d.ts +1 -0
- package/dist/types/kernel/contract/dsh-plugins.d.ts +2 -0
- package/dist/types/kernel/contract/index.d.ts +4 -0
- package/dist/types/kernel/contract/long-tasks.d.ts +2 -0
- package/dist/types/kernel/contract/market-index.d.ts +2 -0
- package/dist/types/kernel/contract/platform.d.ts +1 -0
- package/dist/types/kernel/contract/preflight-wake.d.ts +2 -0
- package/dist/types/kernel/contract/profile-create.d.ts +2 -0
- package/dist/types/kernel/contract/sidebar-edition.d.ts +2 -0
- package/dist/types/kernel/contract/unit-manifests.d.ts +2 -0
- package/dist/types/{shared/api → kernel}/host/mount-units.d.ts +2 -1
- package/dist/types/modules/panels/client.d.ts +1 -1
- package/dist/types/modules/panels/model/approval.d.ts +4 -8
- package/dist/types/modules/panels/model/diy-browser-tools.d.ts +1 -1
- package/dist/types/modules/panels/model/diy-changelog.d.ts +2 -0
- package/dist/types/modules/panels/model/diy-context.d.ts +20 -18
- package/dist/types/modules/panels/model/diy-page.d.ts +4 -2
- package/dist/types/modules/panels/model/diy-record-open.d.ts +0 -15
- package/dist/types/modules/panels/model/diy-record-text.d.ts +0 -2
- package/dist/types/modules/panels/model/diy-record.d.ts +1 -31
- package/dist/types/modules/panels/model/diy-report.d.ts +6 -7
- package/dist/types/modules/panels/model/diy-tools.d.ts +1 -0
- package/dist/types/modules/panels/model/long-task-tools.d.ts +0 -11
- package/dist/types/modules/panels/model/market-dependency-update.d.ts +15 -0
- package/dist/types/modules/panels/model/market-dependency.d.ts +15 -10
- package/dist/types/modules/panels/model/market-discover-routes.d.ts +3 -0
- package/dist/types/modules/panels/model/market-discover.d.ts +33 -0
- package/dist/types/modules/panels/model/market-dispatch.d.ts +4 -3
- package/dist/types/modules/panels/model/market-env.d.ts +2 -3
- package/dist/types/modules/panels/model/market-registry.d.ts +3 -3
- package/dist/types/modules/panels/model/market-restart.d.ts +1 -1
- package/dist/types/modules/panels/model/market-route.d.ts +5 -3
- package/dist/types/modules/panels/model/market-sources-act.d.ts +9 -0
- package/dist/types/modules/panels/model/market-types.d.ts +7 -13
- package/dist/types/modules/panels/model/market-update-bundle.d.ts +19 -0
- package/dist/types/modules/panels/model/market-verify.d.ts +15 -0
- package/dist/types/modules/panels/model/market-workbench-update.d.ts +3 -2
- package/dist/types/modules/panels/model/market.d.ts +6 -5
- package/dist/types/modules/panels/model/plugin-actions.d.ts +2 -1
- package/dist/types/modules/panels/model/plugin-section.d.ts +3 -1
- package/dist/types/modules/panels/model/publish-preview-routes.d.ts +2 -0
- package/dist/types/modules/panels/unit.d.ts +8 -5
- package/dist/types/modules/sessions/model/attention.d.ts +0 -11
- package/dist/types/modules/sessions/model/session-node.d.ts +0 -10
- package/dist/types/shared/api/diy.d.ts +6 -4
- package/dist/types/shared/api/host/approval-call.d.ts +0 -9
- package/dist/types/shared/api/host/approval-gate.d.ts +26 -0
- package/dist/types/shared/api/host/bundle-routes.d.ts +2 -1
- package/dist/types/shared/api/host/diy-artifacts.d.ts +3 -0
- package/dist/types/shared/api/host/diy-changelog.d.ts +13 -0
- package/dist/types/shared/api/host/diy-components.d.ts +2 -3
- package/dist/types/shared/api/host/diy-modules.d.ts +25 -0
- package/dist/types/shared/api/host/diy-publish-preview.d.ts +4 -0
- package/dist/types/shared/api/host/diy-recon-fs.d.ts +2 -2
- package/dist/types/shared/api/host/diy-tokens.d.ts +8 -0
- package/dist/types/shared/api/host/host-routes.d.ts +10 -0
- package/dist/types/shared/api/host/long-task-notice.d.ts +0 -20
- package/dist/types/shared/api/host/long-tasks.d.ts +1 -8
- package/dist/types/shared/api/host/market-doc.d.ts +21 -0
- package/dist/types/shared/api/host/market-index-fetch.d.ts +37 -0
- package/dist/types/shared/api/host/market-source-init.d.ts +22 -0
- package/dist/types/shared/api/host/market-sources-store.d.ts +15 -0
- package/dist/types/shared/api/host/permission-mode.d.ts +4 -0
- package/dist/types/shared/api/host/post-channels.d.ts +1 -1
- package/dist/types/shared/api/host/sidebar-edition.d.ts +14 -0
- package/dist/types/shared/api/host/unit-roster-facts.d.ts +1 -1
- package/dist/types/shared/api/host/workspace-root.d.ts +6 -0
- package/dist/types/shared/api/platform/client.d.ts +10 -0
- package/dist/types/shared/api/unit-board.d.ts +4 -0
- package/dist/types/shared/api/write-outcome.d.ts +3 -0
- package/dist/types/shared/components/IconModules.d.ts +2 -0
- package/dist/types/shared/components/PanelFoot.d.ts +0 -9
- package/dist/types/shared/components/blocker-action.d.ts +3 -0
- package/dist/types/shared/dev-surface/index.d.ts +5 -0
- package/dist/types/shared/dev-surface/types.d.ts +79 -0
- package/dist/types/shared/hooks/bundle-queries.d.ts +1 -13
- package/dist/types/shared/hooks/fact-transport.d.ts +4 -0
- package/dist/types/shared/hooks/fact-transports.d.ts +0 -4
- package/dist/types/shared/hooks/market-queries.d.ts +11 -0
- package/dist/types/shared/hooks/panel-state-report.d.ts +0 -12
- package/dist/types/shared/hooks/sidebar-edition.d.ts +2 -0
- package/dist/types/shared/hooks/use-blocker-actions.d.ts +0 -8
- package/dist/types/shared/hooks/use-capabilities.d.ts +1 -55
- package/dist/types/shared/hooks/use-capability-gate.d.ts +1 -2
- package/dist/types/shared/hooks/use-diy-debug.d.ts +0 -13
- package/dist/types/shared/hooks/use-diy-record.d.ts +0 -13
- package/dist/types/shared/hooks/use-host-write.d.ts +1 -1
- package/dist/types/shared/hooks/use-shell-long-tasks.d.ts +1 -7
- package/dist/types/shared/hooks/use-unit-board.d.ts +1 -1
- package/icon.svg +17 -28
- package/package.json +33 -13
- package/preset/diy.patch.yml +3 -3
- package/profile/isolation.patch.yml +18 -7
- package/profile/sandbox.patch.yml +2 -2
- package/scripts/clone-profile.mjs +268 -0
- package/scripts/create-workbench.mjs +166 -0
- package/scripts/seed-profile.sh +22 -10
- package/scripts/seed-workshop.sh +17 -19
- package/skills/workbench-module-diy/BUILD.md +57 -133
- package/skills/workbench-module-diy/COPY.md +89 -0
- package/skills/workbench-module-diy/DATASOURCE.md +173 -116
- package/skills/workbench-module-diy/DESIGN.md +76 -109
- package/skills/workbench-module-diy/FAMILY.md +48 -52
- package/skills/workbench-module-diy/KIT.md +78 -133
- package/skills/workbench-module-diy/LINKAGE.md +66 -105
- package/skills/workbench-module-diy/PANEL.md +81 -171
- package/skills/workbench-module-diy/REVIEW.md +67 -81
- package/skills/workbench-module-diy/SKILL.md +66 -96
- package/skills/workbench-module-diy/STEPS.md +66 -69
- package/skills/workbench-module-diy/TOOLS.md +134 -103
- package/skills/workbench-module-diy/WIRING.md +64 -84
- package/skills/workbench-module-diy/WRITES.md +115 -142
- package/dist/types/app/layouts/config-sync/ConfigSyncSection.d.ts +0 -5
- package/dist/types/shared/api/bundle-install.d.ts +0 -123
- package/dist/types/shared/api/config-sync.d.ts +0 -35
- package/dist/types/shared/api/dsh-plugins.d.ts +0 -11
- package/dist/types/shared/api/host/bundle-manager.d.ts +0 -11
- package/dist/types/shared/api/host/config-sync.d.ts +0 -46
- package/dist/types/shared/api/host/diy-preset-health.d.ts +0 -35
- package/dist/types/shared/api/host/diy-workshop.d.ts +0 -23
- package/dist/types/shared/api/host/dsh-plugins.d.ts +0 -5
- package/dist/types/shared/api/host/installed-module.d.ts +0 -54
- package/dist/types/shared/api/host/installed-module.test.d.ts +0 -1
- package/dist/types/shared/api/host/opencli-command.d.ts +0 -10
- package/dist/types/shared/api/host/opencli-command.test.d.ts +0 -1
- package/dist/types/shared/api/host/opencli.test.d.ts +0 -1
- package/dist/types/shared/api/host/package-content.d.ts +0 -6
- package/dist/types/shared/api/host/package-content.test.d.ts +0 -1
- package/dist/types/shared/api/host/package-kind.d.ts +0 -21
- package/dist/types/shared/api/host/package-kind.test.d.ts +0 -1
- package/dist/types/shared/api/host/package-route.d.ts +0 -23
- package/dist/types/shared/api/host/package-route.test.d.ts +0 -1
- package/dist/types/shared/api/host/plugin-catalog.d.ts +0 -65
- package/dist/types/shared/api/host/plugin-login-hint.d.ts +0 -2
- package/dist/types/shared/api/host/plugin-tools.d.ts +0 -14
- package/dist/types/shared/api/host/plugin-units.d.ts +0 -48
- package/dist/types/shared/api/host/preflight-route.d.ts +0 -15
- package/dist/types/shared/api/host/preflight.d.ts +0 -75
- package/dist/types/shared/api/host/probe-cache.d.ts +0 -6
- package/dist/types/shared/api/host/probe-libs.d.ts +0 -11
- package/dist/types/shared/api/host/probe-units.d.ts +0 -17
- package/dist/types/shared/api/host/probe-verdict.d.ts +0 -7
- package/dist/types/shared/api/host/profile-registries.d.ts +0 -21
- package/dist/types/shared/api/host/registry-declaration.d.ts +0 -23
- package/dist/types/shared/api/host/release.d.ts +0 -24
- package/dist/types/shared/api/host/runtime-seed.d.ts +0 -38
- package/dist/types/shared/api/host/self-update.d.ts +0 -45
- package/dist/types/shared/api/host/version-range.d.ts +0 -2
- package/dist/types/shared/api/host/workshop-root.d.ts +0 -16
- package/dist/types/shared/api/long-tasks.d.ts +0 -19
- package/dist/types/shared/api/unit-manifests.d.ts +0 -6
- package/docs/HANDOFF.md +0 -333
- package/docs/OPERATIONS.md +0 -229
- package/skills/workbench-module-diy/TOOLING.md +0 -55
- /package/dist/types/{app/layouts/rightbar/registry.d.ts → kernel/client/board-registry.d.ts} +0 -0
- /package/dist/types/{app/layouts/rightbar/registry.test.d.ts → kernel/contract/contracts.test.d.ts} +0 -0
- /package/dist/types/{shared/api/host/bundle-manager.test.d.ts → kernel/contract/index.test.d.ts} +0 -0
- /package/dist/types/{shared/api → kernel}/host/unit-readiness.d.ts +0 -0
- /package/dist/types/{shared/api → kernel}/host/unit-registry.d.ts +0 -0
- /package/dist/types/shared/{api/host/diy-workshop.test.d.ts → components/blocker-action.test.d.ts} +0 -0
- /package/dist/types/shared/{api/host/dsh-plugins.test.d.ts → dev-surface/install.d.ts} +0 -0
package/cordis.patch.yml
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
|
-
# 工作台 bundle
|
|
2
|
-
# 1.
|
|
3
|
-
# 2.
|
|
4
|
-
# 3. 插入工作台插件本体。
|
|
1
|
+
# 工作台 bundle 的补丁层。做两件事:
|
|
2
|
+
# 1. 打开宿主的模块监听 —— 让 `npm run dev` 重建后宿主插件能热换;
|
|
3
|
+
# 2. 插入工作台插件本体。
|
|
5
4
|
#
|
|
6
5
|
# 组合顺序(实测):
|
|
7
6
|
# 1. bundle 层(dsh.profile.bundles 顺序) ← 本文件在这里
|
|
@@ -9,20 +8,53 @@
|
|
|
9
8
|
# 3. 机器公共层($DSH_HOME/cordis.patch.yml,对所有 profile 生效)
|
|
10
9
|
# 4. --patch 叠加层
|
|
11
10
|
#
|
|
12
|
-
# 我们排在 bundle 列表最后,所以能覆盖 dsh-web-app
|
|
11
|
+
# 我们排在 bundle 列表最后,所以能覆盖 dsh-web-app 插入的行。
|
|
13
12
|
|
|
14
|
-
# ──
|
|
15
|
-
# sidebar 是 single 槽,理论上可以用更低的 priority 遮蔽 ui-sidebar 的
|
|
16
|
-
# SidebarRoot。但子座位(sidebar.panellist / sidebar.settings / …)的声明
|
|
17
|
-
# 是**独占 claim**,SlotSpec 里没有 priority:两个 entry 声明同一批座位,
|
|
18
|
-
# 后一个会抛错,导致 ui-sidebar 整个 entry 激活失败、前端直接白屏报
|
|
19
|
-
# "Failed to load plugins"。
|
|
13
|
+
# ── 左栏二选一:官方 ui-sidebar / 工作台自己的 ─────────────────────────
|
|
20
14
|
#
|
|
21
|
-
#
|
|
22
|
-
#
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
15
|
+
# 默认是**官方**左栏(这一层不再摘 ui-sidebar)。Guest 的「设置 → 工作台设置 →
|
|
16
|
+
# 会话列表」选「自定义」时,往 **profile 用户层**(profiles/<name>/cordis.patch.yml)
|
|
17
|
+
# 写一行 `- id: ui-sidebar` + `disabled: true`;dsh-hmr 盯着 profile patch,
|
|
18
|
+
# 变了会重组,刷新页面即生效(不用重启进程)。
|
|
19
|
+
#
|
|
20
|
+
# 为什么不能运行时遮蔽:sidebar 的子座位(sidebar.panellist / .settings / …)是
|
|
21
|
+
# **独占 claim**,两个 entry 声明同一批座位会抛错;而运行时只给声明了 children 的
|
|
22
|
+
# entry 发 `renderSlot`。所以两套左栏不能同时在场,只能按组合层二选一。
|
|
23
|
+
# 证据:内部设计记录 §3。
|
|
24
|
+
|
|
25
|
+
# ── 权限预设:多给一档「全盘写 + 保留审批」 ────────────────────────────
|
|
26
|
+
# dsh 出厂只有「工作区内修改」(workspace-write + ask)与「完全权限」
|
|
27
|
+
# (danger-full-access + never)。中间那档「文件边界全开、但审批策略仍是 ask」
|
|
28
|
+
# 不在表里,用户选不到;这里把它加进选择器。
|
|
29
|
+
#
|
|
30
|
+
# 这一档是 dsh 层的权限档,不绑任何产品:名字与描述都不带产品字样。
|
|
31
|
+
# 它只改变两个旋钮,谁读这两个旋钮(写闸门、升权审批、插件命令……)
|
|
32
|
+
# 各自按自己的规则响应。
|
|
33
|
+
#
|
|
34
|
+
# `config` 是整体替换、不深合并:dsh 出厂那三档必须一起写全。
|
|
35
|
+
# `defaultPreset` 不写,保持 dsh 按组合默认值推断(通常是 workspace-write)。
|
|
36
|
+
#
|
|
37
|
+
# id 用 `danger-full-access-ask`,不覆盖 `danger-full-access`:后者要留给
|
|
38
|
+
# 真正「不问审批」的完全权限。代价是 dsh 客户端只对 `danger-full-access` /
|
|
39
|
+
# `auto` 两个 id 弹全盘风险确认、也只给那四个内置 id 图标 —— 这一档点了直接切、
|
|
40
|
+
# 而且没有图标(2026-10-22 明确接受)。
|
|
41
|
+
- id: permission
|
|
42
|
+
config:
|
|
43
|
+
presets:
|
|
44
|
+
read-only:
|
|
45
|
+
sandbox: read-only
|
|
46
|
+
approval: ask
|
|
47
|
+
workspace-write:
|
|
48
|
+
sandbox: workspace-write
|
|
49
|
+
approval: ask
|
|
50
|
+
danger-full-access:
|
|
51
|
+
sandbox: danger-full-access
|
|
52
|
+
approval: never
|
|
53
|
+
danger-full-access-ask:
|
|
54
|
+
sandbox: danger-full-access
|
|
55
|
+
approval: ask
|
|
56
|
+
name: 完全权限(保留审批)
|
|
57
|
+
description: 允许写工作区外;需要审批的操作仍会继续询问。
|
|
26
58
|
|
|
27
59
|
# ── 宿主侧热更新 ──────────────────────────────────────────────────────
|
|
28
60
|
# 出厂默认 `root: []` = 不监听任何模块目录,改了宿主代码只能重启。
|
|
@@ -42,11 +74,11 @@
|
|
|
42
74
|
config:
|
|
43
75
|
root:
|
|
44
76
|
- !!js process.env.DSH_WORKBENCH_ROOT ?? '.'
|
|
45
|
-
- !!js dshHomePath('workbench/diy')
|
|
77
|
+
- !!js process.env.DSH_WORKBENCH_HOME ?? dshHomePath('workbench/diy')
|
|
46
78
|
# ★ followSymlinks: false(2026-10-11 实测:这就是"改了没反应、而且不报错"的根因)
|
|
47
79
|
#
|
|
48
80
|
# 两个根底下的 `node_modules/@dsh-workbench/*` 是一串**互相指向**的软链
|
|
49
|
-
# (工坊 → core → 本仓 packages/
|
|
81
|
+
# (工坊 → core → 本仓 packages/core → 它自己的 node_modules/@dsh-workbench/shared → …)。
|
|
50
82
|
# 默认跟随软链时 chokidar 会一路走进去,而默认的 `ignored: ['**/node_modules', …]` 在
|
|
51
83
|
# **根之外的路径**上根本不生效:chokidar 传给 ignored 的是 `relative(baseDir, path)`,
|
|
52
84
|
# 根在 baseDir 之外时它长这样 —— `../../../../.dsh/workbench/diy/node_modules/…`,
|
|
@@ -94,27 +126,20 @@
|
|
|
94
126
|
- '*(../)**/node_modules'
|
|
95
127
|
- '*(../)**/.*'
|
|
96
128
|
|
|
97
|
-
# ──
|
|
129
|
+
# ── 可写根**不在这里**(2026-10-22 挪走)──────────────────────────────────
|
|
98
130
|
#
|
|
99
|
-
#
|
|
100
|
-
#
|
|
101
|
-
#
|
|
102
|
-
#
|
|
103
|
-
#
|
|
104
|
-
# dsh-base 出厂那句 `process.cwd()`,`$DSH_HOME/workbench` 不在它下面。
|
|
131
|
+
# 这一格曾经有一行 `sandbox-policy`(`workspaceRoot` → `$DSH_HOME/workbench`),
|
|
132
|
+
# 为的是"装进别人的 profile 也就地放行"。它被挪走了,因为 **bundle 层是在线启用时
|
|
133
|
+
# 才生效的**:dsh 0.2.1 的在线重组在改这一行时会重建 `session-controller`,与
|
|
134
|
+
# `file-upload` 注销 resolver 赛跑 —— 启用当场把 session-controller 打成 failed,
|
|
135
|
+
# 之后每次新建会话都是 `gateway/service-unavailable`(连 toggle 都救不回来,只能重启)。
|
|
105
136
|
#
|
|
106
|
-
#
|
|
107
|
-
#
|
|
108
|
-
#
|
|
109
|
-
#
|
|
110
|
-
#
|
|
111
|
-
#
|
|
112
|
-
# `process.cwd()` 变成 `$DSH_HOME/workbench`。有会话的命令不受影响(会话用自己的
|
|
113
|
-
# cwd),工作台自己的命令本来也只该写这一棵树。
|
|
114
|
-
- id: sandbox-policy
|
|
115
|
-
config:
|
|
116
|
-
mode: !!js process.env.DSH_PERMISSION_MODE ?? 'workspace-write'
|
|
117
|
-
workspaceRoot: !!js dshHomePath('workbench')
|
|
137
|
+
# 证据与 A/B:ADR-0037 的 2026-10-22 补记。自带 profile 的可写根仍有两处:启动器每次启动
|
|
138
|
+
# 叠的 `--patch profile/sandbox.patch.yml`,以及 `profile/isolation.patch.yml` 里同值的那一行
|
|
139
|
+
# (seed-profile.sh 追加进 profile,给不带启动器的 `dsh workbench`)。装进别人的 profile 时,
|
|
140
|
+
# 请把那一行写进那个 profile 的 `cordis.patch.yml` 再**重启**(在线写同一行也会撞同一个竞态)。
|
|
141
|
+
# 少了它只会让"无会话的插件命令"被沙箱挡,不会再动会话接口;宿主启动时会就此打一条 warn
|
|
142
|
+
# (见 runtime-seed 的 coversWritableRoot)。
|
|
118
143
|
|
|
119
144
|
- insert:
|
|
120
145
|
- id: workbench
|