super-dsh 0.3.0-c → 0.3.0-e
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/README.md +25 -22
- package/client/index.js +25 -11
- package/cordis.patch.yml +3 -3
- package/package.json +20 -8
- package/superd-hub/dist/bundle-setup.d.ts +17 -2
- package/superd-hub/dist/bundle-setup.js +158 -2
- package/superd-hub/dist/client/mesh-api.d.ts +6 -3
- package/superd-hub/dist/client/mesh-api.js +20 -5
- package/superd-hub/dist/fusion-transport.js +14 -3
- package/superd-hub/dist/gateway.js +2 -0
- package/superd-hub/dist/machines.d.ts +2 -0
- package/superd-hub/dist/machines.js +2 -0
- package/superd-hub/dist/mesh-link.d.ts +10 -2
- package/superd-hub/dist/mesh-link.js +131 -27
- package/superd-hub/dist/mesh-rpc.d.ts +1 -1
- package/superd-hub/dist/mesh-rpc.js +20 -12
- package/superd-hub/dist/pairing-auth.d.ts +7 -0
- package/superd-hub/dist/pairing-auth.js +29 -0
- package/superd-hub/lib/client/index.js +25 -11
- package/superd-hub/package.json +19 -2
- package/superd-hub/scripts/register-companion.mjs +100 -0
- package/bundles/better-dsh.tgz +0 -0
- package/bundles/manifest.json +0 -10
- package/node_modules/better-dsh/LICENSE +0 -24
- package/node_modules/better-dsh/README.md +0 -323
- package/node_modules/better-dsh/THIRD_PARTY_NOTICES.md +0 -52
- package/node_modules/better-dsh/cordis.patch.yml +0 -139
- package/node_modules/better-dsh/docs/00_adr/0001-bridge-tool-layer-not-service-layer.md +0 -14
- package/node_modules/better-dsh/docs/00_adr/0002-masking-is-presentation-only.md +0 -15
- package/node_modules/better-dsh/docs/10_plans/2026-09-23-remote-execution-framework.md +0 -236
- package/node_modules/better-dsh/docs/10_plans/2026-09-23-remote-framework-impl.md +0 -2083
- package/node_modules/better-dsh/docs/10_plans/2026-09-26-lsp-ast-reminder.md +0 -64
- package/node_modules/better-dsh/docs/10_plans/A2A-messaging-channel-test-archive.md +0 -256
- package/node_modules/better-dsh/docs/10_plans/code-mode-vs-rlm-ipython-comparison.md +0 -137
- package/node_modules/better-dsh/docs/10_plans/dashr-blueprint-review.md +0 -201
- package/node_modules/better-dsh/docs/10_plans/dashr-blueprint.md +0 -561
- package/node_modules/better-dsh/docs/10_plans/dashr-compaction-window-and-archive.md +0 -307
- package/node_modules/better-dsh/docs/10_plans/dashr-profile-layer-feasibility.md +0 -367
- package/node_modules/better-dsh/docs/10_plans/dashr-sandbox-escalation-semantics-gap.md +0 -171
- package/node_modules/better-dsh/docs/10_plans/dashr-security-sandbox-analysis.md +0 -187
- package/node_modules/better-dsh/docs/10_plans/dashr-surface-invariant-and-omp-imports.md +0 -97
- package/node_modules/better-dsh/docs/10_plans/ipython-kernel-interactive-interface-test-report.md +0 -152
- package/node_modules/better-dsh/docs/10_plans/kernel-refactoring/Dash-IPython-Control-Prompt-draft.md +0 -146
- package/node_modules/better-dsh/docs/10_plans/kernel-refactoring/Dash-IPython-Control-Prompt-draft_v3.md +0 -50
- package/node_modules/better-dsh/docs/10_plans/kernel-refactoring/Dash-IPython-Control-Prompt-draft_v4.md +0 -79
- package/node_modules/better-dsh/docs/10_plans/kernel-refactoring/Dash-vs-PrimeAgent-systemprompt-toolcatalog-comparison.md +0 -138
- package/node_modules/better-dsh/docs/10_plans/kernel-refactoring/RLM-system-prompt-injection-gap-report.md +0 -161
- package/node_modules/better-dsh/docs/10_plans/kernel-refactoring/V0.1.5-development-plan.md +0 -109
- package/node_modules/better-dsh/docs/10_plans/kernel-refactoring/actinoable-surface-to-llm-in-agent-runtime_dsh.md +0 -50
- package/node_modules/better-dsh/docs/10_plans/kernel-refactoring/actinoable-surface-to-llm-in-agent-runtime_prime.md +0 -113
- package/node_modules/better-dsh/docs/10_plans/recallable-compaction.md +0 -147
- package/node_modules/better-dsh/docs/10_plans/spike-tag-repro.mjs +0 -102
- package/node_modules/better-dsh/docs/10_plans/upstream-analysis.md +0 -128
- package/node_modules/better-dsh/docs/20_specs/agent/spec.md +0 -54
- package/node_modules/better-dsh/docs/20_specs/ast/spec.md +0 -57
- package/node_modules/better-dsh/docs/20_specs/compaction-recall/spec.md +0 -46
- package/node_modules/better-dsh/docs/20_specs/ctx/spec.md +0 -107
- package/node_modules/better-dsh/docs/20_specs/dsh/spec.md +0 -47
- package/node_modules/better-dsh/docs/20_specs/dvc/spec.md +0 -106
- package/node_modules/better-dsh/docs/20_specs/escalation-guidance/spec.md +0 -44
- package/node_modules/better-dsh/docs/20_specs/fs-scheme-resolution/spec.md +0 -37
- package/node_modules/better-dsh/docs/20_specs/hash-edit/spec.md +0 -41
- package/node_modules/better-dsh/docs/20_specs/http-read/spec.md +0 -73
- package/node_modules/better-dsh/docs/20_specs/kernel-provisioning/spec.md +0 -53
- package/node_modules/better-dsh/docs/20_specs/lsp/spec.md +0 -121
- package/node_modules/better-dsh/docs/20_specs/mobile-layout/spec.md +0 -108
- package/node_modules/better-dsh/docs/20_specs/model-failover/spec.md +0 -20
- package/node_modules/better-dsh/docs/20_specs/plugins-page-components/spec.md +0 -79
- package/node_modules/better-dsh/docs/20_specs/preact-ui-shell/spec.md +0 -22
- package/node_modules/better-dsh/docs/20_specs/repl-dispatch-resilience/spec.md +0 -21
- package/node_modules/better-dsh/docs/20_specs/skill/spec.md +0 -58
- package/node_modules/better-dsh/docs/20_specs/tool-surface/spec.md +0 -222
- package/node_modules/better-dsh/docs/20_specs/url-schema/spec.md +0 -148
- package/node_modules/better-dsh/docs/20_specs/web-trust-fence/spec.md +0 -43
- package/node_modules/better-dsh/docs/50_test-reports/2026-09-06-write/345/267/245/345/205/267sandbox/345/215/207/347/272/247/351/200/217/344/274/240bug/345/244/215/345/217/221/345/217/212/346/214/202/350/265/267-/344/272/213/344/273/266/346/212/245/345/221/212.md +0 -176
- package/node_modules/better-dsh/docs/50_test-reports/2026-09-08-hashline-edit-E_RANGE_UNVERIFIED/350/267/250/350/275/256/344/274/232/350/257/235/351/224/256/345/244/261/346/225/210-/350/257/212/346/226/255/346/212/245/345/221/212.md +0 -226
- package/node_modules/better-dsh/docs/50_test-reports/2026-09-11-control-prompt-into-eval-description/345/256/236/346/265/213/346/212/245/345/221/212.md +0 -222
- package/node_modules/better-dsh/docs/50_test-reports/2026-09-12-fs-scheme-resolution-/345/256/236/346/265/213/346/212/245/345/221/212.md +0 -81
- package/node_modules/better-dsh/docs/50_test-reports/2026-09-12-url-schemes-grammar-matrix/344/270/216catalog-centralize-/345/256/236/346/265/213/346/212/245/345/221/212.md +0 -234
- package/node_modules/better-dsh/docs/50_test-reports/2026-09-12-url-schemes-recallable-context-design/351/252/214/350/257/201/346/212/245/345/221/212.md +0 -160
- package/node_modules/better-dsh/docs/50_test-reports/2026-09-12-url-schemes-recallable-context-/345/256/236/346/265/213/345/211/247/346/234/254.md +0 -44
- package/node_modules/better-dsh/docs/50_test-reports/2026-09-12-url-schemes-recallable-context-/345/256/236/346/265/213/346/212/245/345/221/212.md +0 -89
- package/node_modules/better-dsh/docs/50_test-reports/2026-09-12-url-schemes-/345/205/255scheme/345/206/222/347/203/237/344/270/216/350/276/271/347/225/214/345/256/236/346/265/213/346/212/245/345/221/212.md +0 -198
- package/node_modules/better-dsh/docs/50_test-reports/2026-09-13-hashline-off/344/270/213scheme/345/217/257/350/276/276/346/200/247/345/267/245/345/205/267/351/235/242/344/270/215/345/257/271/347/247/260-/345/256/236/346/265/213/346/212/245/345/221/212.md +0 -246
- package/node_modules/better-dsh/docs/50_test-reports/2026-09-13-preact-ui-shell/345/256/236/346/265/213/346/212/245/345/221/212.md +0 -50
- package/node_modules/better-dsh/docs/50_test-reports/2026-09-14-4999-skill/346/270/205/345/215/225/344/270/216lsp-gate/345/256/236/346/265/213/346/212/245/345/221/212.md +0 -63
- package/node_modules/better-dsh/docs/50_test-reports/2026-09-17-plugins/351/241/265/345/205/255/347/273/204/344/273/266/346/213/206/345/210/206/345/256/236/346/265/213/346/212/245/345/221/212.md +0 -76
- package/node_modules/better-dsh/docs/50_test-reports/2026-09-22-4988/345/217/214/345/271/263/351/235/242/345/220/257/345/212/250/344/277/256/345/244/215/345/256/236/346/265/213/346/212/245/345/221/212.md +0 -76
- package/node_modules/better-dsh/docs/50_test-reports/2026-09-22-better-dsh/347/273/204/344/273/266/347/203/255/346/217/222/346/213/224/344/270/216/344/276/235/350/265/226/347/272/247/350/201/224/345/256/236/346/265/213/346/212/245/345/221/212.md +0 -134
- package/node_modules/better-dsh/docs/50_test-reports/2026-09-23-remote-framework/345/256/236/346/265/213/346/212/245/345/221/212.md +0 -92
- package/node_modules/better-dsh/docs/50_test-reports/2026-09-23-remote-framework/347/254/254/344/270/200/344/272/272/347/247/260/345/244/215/346/265/213/346/212/245/345/221/212.md +0 -125
- package/node_modules/better-dsh/docs/50_test-reports/2026-09-23-ssh/345/267/245/345/205/267assisted-pty/344/274/232/350/257/235framing/345/256/236/346/265/213/346/212/245/345/221/212.md +0 -207
- package/node_modules/better-dsh/docs/50_test-reports/2026-09-24-v0.1.7-rc.1/345/257/271/351/275/220/350/275/256-compaction/344/270/216failover/350/256/276/347/275/256/351/235/242/344/277/256/345/244/215/345/256/236/346/265/213/346/212/245/345/221/212.md +0 -65
- package/node_modules/better-dsh/docs/50_test-reports/2026-09-27-lsp-ast-reminder-4999/345/256/236/346/265/213/346/212/245/345/221/212.md +0 -53
- package/node_modules/better-dsh/docs/50_test-reports/2026-09-28-ctx-scheme/351/225/277/344/274/232/350/257/235utility/345/256/236/346/265/213/346/212/245/345/221/212.md +0 -155
- package/node_modules/better-dsh/docs/50_test-reports/2026-10-01-v0.2.4d-web-password-gate/345/256/236/346/265/213/346/212/245/345/221/212.md +0 -105
- package/node_modules/better-dsh/docs/50_test-reports/2026-10-02-better-dsh-schemastery/344/276/235/350/265/226/345/243/260/346/230/216/344/277/256/345/244/215/345/256/236/346/265/213/346/212/245/345/221/212.md +0 -62
- package/node_modules/better-dsh/docs/50_test-reports/2026-10-02-ctx-navigation/345/256/236/346/265/213/346/212/245/345/221/212.md +0 -137
- package/node_modules/better-dsh/docs/50_test-reports/2026-10-02-v0.2.0-rc.2/345/257/271/351/275/220/350/275/256/345/256/236/346/265/213/346/212/245/345/221/212.md +0 -38
- package/node_modules/better-dsh/docs/50_test-reports/2026-10-03-ast-engine-deomp-4999/345/256/236/346/265/213/346/212/245/345/221/212.md +0 -325
- package/node_modules/better-dsh/docs/50_test-reports/2026-10-03-better-dsh-tool-surface-repl-dvc-browser-ast-lsp-4999/345/256/236/346/265/213/346/212/245/345/221/212.md +0 -185
- package/node_modules/better-dsh/docs/50_test-reports/2026-10-03-docs-packaging-trim/345/256/236/346/265/213/346/212/245/345/221/212.md +0 -82
- package/node_modules/better-dsh/docs/50_test-reports/2026-10-03-physical-import/344/270/216llm-completion-ast/347/233/270/345/257/271/350/267/257/345/276/204/344/277/256/345/244/215/345/256/236/346/265/213/346/212/245/345/221/212.md +0 -101
- package/node_modules/better-dsh/docs/50_test-reports/2026-10-03-pnpm11/345/271/264/351/276/204/351/227/250/351/224/201/346/226/207/344/273/266/347/233/270/344/275/215/345/256/236/350/257/201.md +0 -54
- package/node_modules/better-dsh/docs/50_test-reports/2026-10-03-remote-BYO-PTY-label/351/207/215/346/236/204/347/254/254/344/270/200/344/272/272/347/247/260/345/256/236/346/265/213/346/212/245/345/221/212.md +0 -447
- package/node_modules/better-dsh/docs/50_test-reports/2026-10-03-schemastery-cosmokit/346/272/220/347/240/201/345/206/205/350/201/224/345/256/236/346/265/213/346/212/245/345/221/212.md +0 -63
- package/node_modules/better-dsh/docs/50_test-reports/2026-10-03-zero-npm-runtime-deps/345/256/236/346/265/213/346/212/245/345/221/212.md +0 -82
- package/node_modules/better-dsh/docs/50_test-reports/2026-10-04-ast-engine-deomp-0.2.5-d/345/217/221/345/270/203/351/252/214/346/224/266/346/212/245/345/221/212.md +0 -220
- package/node_modules/better-dsh/docs/50_test-reports/2026-10-04-ast_grep/344/270/216ast_edit/345/245/221/347/272/246/344/270/216/350/276/271/347/225/214/345/256/236/346/265/213/346/212/245/345/221/212.md +0 -151
- package/node_modules/better-dsh/docs/50_test-reports/2026-10-06-authentication-only-web-admission-4999.md +0 -63
- package/node_modules/better-dsh/docs/50_test-reports/2026-10-07-better-dsh-welcome-self-contained-4999.md +0 -52
- package/node_modules/better-dsh/docs/50_test-reports/REPL-/345/267/245/345/205/267/350/260/203/347/224/250-/346/210/252/346/226/255/350/257/212/346/226/255.md +0 -110
- package/node_modules/better-dsh/docs/50_test-reports/kernel-provisioning.md +0 -44
- package/node_modules/better-dsh/docs/50_test-reports/repl-kernel-provisioning-test-report.md +0 -87
- package/node_modules/better-dsh/docs/50_test-reports/upstream-dsh-0.1.2-alpha.5-local-test-report.md +0 -81
- package/node_modules/better-dsh/docs/50_test-reports/upstream-dsh-0.1.2-alpha.5-report.md +0 -93
- package/node_modules/better-dsh/docs/50_test-reports/upstream-dsh-0.1.3-alpha.2-local-test-report.md +0 -44
- package/node_modules/better-dsh/docs/50_test-reports/upstream-dsh-0.1.3-alpha.2-report.md +0 -110
- package/node_modules/better-dsh/docs/50_test-reports/upstream-dsh-0.1.5-rc.2-local-test-report.md +0 -79
- package/node_modules/better-dsh/docs/50_test-reports/v0.1.8-improved-/345/256/236/346/265/213/346/212/245/345/221/212.md +0 -142
- package/node_modules/better-dsh/docs/50_test-reports/v0.1.8-/345/256/236/346/265/213/346/212/245/345/221/212.md +0 -193
- package/node_modules/better-dsh/docs/50_test-reports/v0.1.8b-/345/256/236/346/265/213/346/212/245/345/221/212.md +0 -96
- package/node_modules/better-dsh/docs/50_test-reports/v0.1.8c-/345/256/236/346/265/213/346/212/245/345/221/212.md +0 -127
- package/node_modules/better-dsh/docs/50_test-reports/v0.1.8d-/345/256/236/346/265/213/346/212/245/345/221/212.md +0 -150
- package/node_modules/better-dsh/docs/50_test-reports/v0.1.8e-/345/256/236/346/265/213/346/212/245/345/221/212.md +0 -224
- package/node_modules/better-dsh/docs/50_test-reports/v0.1.9a-/345/256/236/346/265/213/346/212/245/345/221/212.md +0 -168
- package/node_modules/better-dsh/docs/50_test-reports/v0.2.0b-/345/256/236/346/265/213/346/212/245/345/221/212.md +0 -123
- package/node_modules/better-dsh/docs/50_test-reports/v0.2.1-/345/256/236/346/265/213/346/212/245/345/221/212.md +0 -110
- package/node_modules/better-dsh/docs/50_test-reports/v0.2.1b-/345/256/236/346/265/213/346/212/245/345/221/212.md +0 -86
- package/node_modules/better-dsh/docs/50_test-reports/v0.2.1c-/345/256/236/346/265/213/346/212/245/345/221/212.md +0 -66
- package/node_modules/better-dsh/docs/50_test-reports/v0.2.1d-/345/256/236/346/265/213/346/212/245/345/221/212.md +0 -67
- package/node_modules/better-dsh/docs/50_test-reports/v0.2.1e-P1-/345/256/236/346/265/213/346/212/245/345/221/212.md +0 -136
- package/node_modules/better-dsh/docs/50_test-reports/v0.2.1ef-dev-audit-report.md +0 -73
- package/node_modules/better-dsh/docs/50_test-reports/v0.2.1f-plugin-shipped-ui-patches/345/256/236/346/265/213/346/212/245/345/221/212.md +0 -102
- package/node_modules/better-dsh/docs/50_test-reports/v0.2.3b-hashline-content-locator/345/256/236/346/265/213/346/212/245/345/221/212.md +0 -73
- package/node_modules/better-dsh/docs/50_test-reports/v0.2.3c-mobile-wave/345/256/236/346/265/213/346/212/245/345/221/212.md +0 -47
- package/node_modules/better-dsh/docs/50_test-reports/v0.2.4-ios-focus-zoom-suppression/345/256/236/346/265/213/346/212/245/345/221/212.md +0 -158
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/skill/SKILL.md +0 -147
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/skill/chapters/ch01-user-guide.md +0 -123
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/skill/chapters/ch02-plugin-basics.md +0 -127
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/skill/chapters/ch03-plugin-framework-practice.md +0 -120
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/skill/chapters/ch04-cordis-fundamentals.md +0 -129
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/skill/chapters/ch05-cordis-api.md +0 -115
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/skill/chapters/ch06-architecture.md +0 -109
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/skill/chapters/ch07-capability-seams.md +0 -97
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/skill/chapters/ch08-internals-pipelines.md +0 -111
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/skill/chapters/ch09-api-gateway.md +0 -106
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/skill/chapters/ch10-config-catalog.md +0 -97
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/skill/chapters/ch11-tool-catalog.md +0 -121
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/skill/chapters/ch12-persistence-catalog.md +0 -109
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/skill/chapters/ch13-subsystems-core-session.md +0 -106
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/skill/chapters/ch14-subsystems-agent-loop.md +0 -111
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/skill/chapters/ch15-subsystems-tool-execution.md +0 -106
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/skill/chapters/ch16-subsystems-session-data.md +0 -132
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/skill/chapters/ch17-subsystems-llm-streaming.md +0 -128
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/skill/chapters/ch18-subsystems-web-ui.md +0 -142
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/skill/chapters/ch19-cookbook.md +0 -149
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/skill/chapters/ch20-development-testing.md +0 -87
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/skill/chapters/ch21-postmortems.md +0 -82
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/skill/chapters/ch22-i18n.md +0 -86
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/skill/cheatsheet.md +0 -67
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/skill/glossary.md +0 -57
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/skill/patterns.md +0 -88
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/AGENTS.md +0 -75
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/agent-lifecycle.md +0 -84
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/agent-lifecycle.zh.md +0 -86
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/api-gateway.md +0 -164
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/api-gateway.zh.md +0 -164
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/architecture.md +0 -150
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/architecture.zh.md +0 -154
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/capability-seams.md +0 -543
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/capability-seams.zh.md +0 -545
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/config-catalog.md +0 -3473
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/config-catalog.zh.md +0 -3474
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cookbook/adding-a-package.md +0 -117
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cookbook/adding-a-package.zh.md +0 -119
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cookbook/adding-a-remote-api.md +0 -197
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cookbook/adding-a-remote-api.zh.md +0 -197
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cookbook/adding-a-settings-card.md +0 -102
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cookbook/adding-a-settings-card.zh.md +0 -102
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cookbook/adding-a-tool.md +0 -101
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cookbook/adding-a-tool.zh.md +0 -103
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cookbook/adding-a-vendored-package.md +0 -59
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cookbook/adding-a-vendored-package.zh.md +0 -59
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cookbook/adding-an-llm-adapter.md +0 -43
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cookbook/adding-an-llm-adapter.zh.md +0 -43
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cookbook/extension-cookbook.md +0 -132
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cookbook/extension-cookbook.zh.md +0 -136
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cookbook/maintaining-dsh-code-review.md +0 -64
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cookbook/maintaining-dsh-code-review.zh.md +0 -64
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cookbook/responding-to-pr-review-on-a-stack.md +0 -32
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cookbook/responding-to-pr-review-on-a-stack.zh.md +0 -32
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-api/context.md +0 -364
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-api/context.zh.md +0 -366
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-api/events.md +0 -207
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-api/events.zh.md +0 -209
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-api/fiber.md +0 -375
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-api/fiber.zh.md +0 -377
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-api/inherited.md +0 -39
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-api/registry.md +0 -152
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-api/registry.zh.md +0 -154
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-api/service.md +0 -102
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-api/service.zh.md +0 -104
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-primer.md +0 -45
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-primer.zh.md +0 -51
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-tutorial/01-first-plugin.md +0 -95
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-tutorial/01-first-plugin.zh.md +0 -95
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-tutorial/02-lifecycle-and-effects.md +0 -98
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-tutorial/02-lifecycle-and-effects.zh.md +0 -98
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-tutorial/03-services.md +0 -98
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-tutorial/03-services.zh.md +0 -98
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-tutorial/04-events.md +0 -144
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-tutorial/04-events.zh.md +0 -144
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-tutorial/05-config.md +0 -84
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-tutorial/05-config.zh.md +0 -84
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-tutorial/06-composition-and-hmr.md +0 -113
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-tutorial/06-composition-and-hmr.zh.md +0 -113
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-tutorial/07-into-the-harness.md +0 -108
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-tutorial/07-into-the-harness.zh.md +0 -108
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-tutorial/index.md +0 -60
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-tutorial/index.zh.md +0 -62
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/deepseek-llm-api-wire-extensions.md +0 -163
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/deepseek-llm-api-wire-extensions.zh.md +0 -163
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/defensive-patterns.md +0 -33
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/defensive-patterns.zh.md +0 -35
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/development.md +0 -167
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/development.zh.md +0 -173
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/event-producer-consumer.md +0 -86
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/event-producer-consumer.zh.md +0 -88
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/glossary.md +0 -45
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/glossary.zh.md +0 -45
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/graph-atlas.md +0 -22
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/graph-atlas.zh.md +0 -24
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/i18n/README.md +0 -60
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/i18n/README.zh.md +0 -62
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/i18n/style-samples.md +0 -87
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/i18n/terminology.md +0 -214
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/i18n/translation-prompt.md +0 -263
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/i18n/translation-rules.md +0 -69
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/i18n/translation-rules.zh.md +0 -69
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/module-graph.md +0 -1411
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/module-graph.zh.md +0 -1413
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/persistence-catalog.md +0 -1075
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/persistence-catalog.zh.md +0 -1077
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/postmortem/0001-acp-default-export-drops-inject.md +0 -113
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/postmortem/0001-acp-default-export-drops-inject.zh.md +0 -113
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/postmortem/0002-js-expression-disabled-filesystem-tools.md +0 -47
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/postmortem/0002-js-expression-disabled-filesystem-tools.zh.md +0 -47
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/postmortem/0003-web-agent-gui-feedback-loop.md +0 -53
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/postmortem/0003-web-agent-gui-feedback-loop.zh.md +0 -53
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/postmortem/0004-landlock-partial-notice-misclassified-child-failures.md +0 -55
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/postmortem/0004-landlock-partial-notice-misclassified-child-failures.zh.md +0 -55
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/postmortem/README.md +0 -18
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/postmortem/README.zh.md +0 -18
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/rescope.md +0 -53
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/rescope.zh.md +0 -53
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/README.md +0 -61
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/README.zh.md +0 -61
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/agent-team.md +0 -207
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/agent-team.zh.md +0 -207
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/approval.md +0 -170
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/approval.zh.md +0 -170
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/attachment.md +0 -351
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/attachment.zh.md +0 -351
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/client-modules.md +0 -168
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/client-modules.zh.md +0 -168
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/code-runtime.md +0 -195
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/code-runtime.zh.md +0 -195
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/commands.md +0 -219
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/commands.zh.md +0 -219
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/compaction.md +0 -238
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/compaction.zh.md +0 -238
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/conversation.md +0 -258
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/conversation.zh.md +0 -258
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/core.md +0 -1209
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/core.zh.md +0 -1219
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/credentials.md +0 -329
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/credentials.zh.md +0 -329
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/extensions.md +0 -382
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/extensions.zh.md +0 -382
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/feedback.md +0 -266
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/feedback.zh.md +0 -266
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/filesystem.md +0 -505
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/filesystem.zh.md +0 -505
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/goal.md +0 -277
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/goal.zh.md +0 -277
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/invariants.md +0 -88
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/invariants.zh.md +0 -88
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/jobs.md +0 -290
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/jobs.zh.md +0 -290
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/llm-streaming.md +0 -1080
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/llm-streaming.zh.md +0 -1086
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/lsp.md +0 -202
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/lsp.zh.md +0 -202
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/permission-presets.md +0 -131
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/permission-presets.zh.md +0 -131
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/persistence.md +0 -395
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/persistence.zh.md +0 -395
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/plan.md +0 -87
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/plan.zh.md +0 -87
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/sandbox.md +0 -220
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/sandbox.zh.md +0 -220
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/schedule.md +0 -192
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/schedule.zh.md +0 -192
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/scope.md +0 -59
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/scope.zh.md +0 -59
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/session-projection.md +0 -354
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/session-projection.zh.md +0 -354
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/session-query.md +0 -509
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/session-query.zh.md +0 -509
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/session-reference.md +0 -219
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/session-reference.zh.md +0 -219
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/session-telemetry.md +0 -194
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/session-telemetry.zh.md +0 -194
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/session-title.md +0 -204
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/session-title.zh.md +0 -204
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/session.md +0 -1155
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/session.zh.md +0 -1159
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/settings.md +0 -405
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/settings.zh.md +0 -405
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/shell.md +0 -303
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/shell.zh.md +0 -303
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/skills.md +0 -354
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/skills.zh.md +0 -354
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/slots.md +0 -175
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/slots.zh.md +0 -175
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/spill.md +0 -117
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/spill.zh.md +0 -117
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/storage.md +0 -260
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/storage.zh.md +0 -260
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/subagent.md +0 -766
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/subagent.zh.md +0 -770
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/subprocess.md +0 -324
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/subprocess.zh.md +0 -324
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/system-prompt.md +0 -220
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/system-prompt.zh.md +0 -220
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/terminal.md +0 -184
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/terminal.zh.md +0 -184
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/todo.md +0 -32
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/todo.zh.md +0 -32
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/token-meter.md +0 -105
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/token-meter.zh.md +0 -105
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/tools.md +0 -720
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/tools.zh.md +0 -720
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/typert.md +0 -343
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/typert.zh.md +0 -343
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/user-questions.md +0 -178
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/user-questions.zh.md +0 -178
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/web-client.md +0 -95
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/web-client.zh.md +0 -95
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/web-server.md +0 -154
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/web-server.zh.md +0 -154
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/web.md +0 -206
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/web.zh.md +0 -206
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/webhook.md +0 -70
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/webhook.zh.md +0 -70
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/workflow.md +0 -278
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/workflow.zh.md +0 -278
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/workspace.md +0 -321
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/workspace.zh.md +0 -321
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/testing.md +0 -54
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/testing.zh.md +0 -54
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/tool-catalog.md +0 -2225
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/tool-catalog.zh.md +0 -2233
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/tool-execution-pipeline.md +0 -62
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/tool-execution-pipeline.zh.md +0 -64
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/develop/basic/config.md +0 -106
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/develop/basic/config.zh.md +0 -106
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/develop/basic/index.md +0 -144
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/develop/basic/index.zh.md +0 -144
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/develop/basic/publish.md +0 -183
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/develop/basic/publish.zh.md +0 -183
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/develop/basic/tool.md +0 -52
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/develop/basic/tool.zh.md +0 -52
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/develop/framework/events.md +0 -143
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/develop/framework/events.zh.md +0 -143
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/develop/framework/index.md +0 -137
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/develop/framework/index.zh.md +0 -137
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/develop/framework/service.md +0 -148
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/develop/framework/service.zh.md +0 -150
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/develop/practice/dynamic-cordis.md +0 -15
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/develop/practice/dynamic-cordis.zh.md +0 -15
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/develop/practice/index.md +0 -155
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/develop/practice/index.zh.md +0 -155
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/develop/practice/llm-adapter.md +0 -189
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/develop/practice/llm-adapter.zh.md +0 -189
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/guide/github-review.md +0 -102
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/guide/github-review.zh.md +0 -102
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/guide/index.md +0 -30
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/guide/index.zh.md +0 -30
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/guide/mcp-memory.md +0 -101
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/guide/mcp-memory.zh.md +0 -101
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/guide/network-proxy.md +0 -85
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/guide/network-proxy.zh.md +0 -85
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/guide/providers.md +0 -190
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/guide/providers.zh.md +0 -190
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/guide/python-sdk.md +0 -150
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/guide/python-sdk.zh.md +0 -150
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/guide/schedule.md +0 -21
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/guide/schedule.zh.md +0 -21
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/index.md +0 -11
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/index.zh.md +0 -11
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/web-styling.md +0 -29
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/web-styling.zh.md +0 -29
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/site-pages-map.txt +0 -234
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/site-pages.json +0 -232
- package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src-README.md +0 -63
- package/node_modules/better-dsh/docs/dev-test-environment-notes.md +0 -137
- package/node_modules/better-dsh/docs/distro-blueprint.md +0 -81
- package/node_modules/better-dsh/docs/dsh-webUI-with-rlm-mode.png +0 -0
- package/node_modules/better-dsh/docs/repositioning-and-rebranding.md +0 -102
- package/node_modules/better-dsh/docs/specs/agent/spec.md +0 -54
- package/node_modules/better-dsh/docs/specs/ast/spec.md +0 -57
- package/node_modules/better-dsh/docs/specs/ast-engine-deomp/spec.md +0 -170
- package/node_modules/better-dsh/docs/specs/authentication-only-web-admission/spec.md +0 -51
- package/node_modules/better-dsh/docs/specs/compaction-recall/spec.md +0 -46
- package/node_modules/better-dsh/docs/specs/ctx/spec.md +0 -179
- package/node_modules/better-dsh/docs/specs/docs-packaging-trim/spec.md +0 -110
- package/node_modules/better-dsh/docs/specs/dsh/spec.md +0 -47
- package/node_modules/better-dsh/docs/specs/dvc/spec.md +0 -106
- package/node_modules/better-dsh/docs/specs/escalation-guidance/spec.md +0 -44
- package/node_modules/better-dsh/docs/specs/fs-scheme-resolution/spec.md +0 -37
- package/node_modules/better-dsh/docs/specs/hash-edit/spec.md +0 -41
- package/node_modules/better-dsh/docs/specs/http-read/spec.md +0 -73
- package/node_modules/better-dsh/docs/specs/kernel-provisioning/spec.md +0 -53
- package/node_modules/better-dsh/docs/specs/lsp/spec.md +0 -121
- package/node_modules/better-dsh/docs/specs/mobile-layout/spec.md +0 -108
- package/node_modules/better-dsh/docs/specs/model-failover/spec.md +0 -20
- package/node_modules/better-dsh/docs/specs/model-picker-ios-blur/spec.md +0 -168
- package/node_modules/better-dsh/docs/specs/plugins-page-components/spec.md +0 -79
- package/node_modules/better-dsh/docs/specs/preact-ui-shell/spec.md +0 -22
- package/node_modules/better-dsh/docs/specs/remote-pty-label/spec.md +0 -126
- package/node_modules/better-dsh/docs/specs/repl-dispatch-resilience/spec.md +0 -21
- package/node_modules/better-dsh/docs/specs/skill/spec.md +0 -58
- package/node_modules/better-dsh/docs/specs/tool-surface/spec.md +0 -222
- package/node_modules/better-dsh/docs/specs/url-schema/spec.md +0 -148
- package/node_modules/better-dsh/docs/specs/web-trust-fence/spec.md +0 -43
- package/node_modules/better-dsh/docs/specs/welcome-self-contained/spec.md +0 -13
- package/node_modules/better-dsh/docs/specs/zero-npm-runtime-deps/spec.md +0 -85
- package/node_modules/better-dsh/docs/superpowers/plans/2026-10-02-ctx-navigation.md +0 -319
- package/node_modules/better-dsh/docs/superpowers/plans/2026-10-03-ast-engine-deomp.md +0 -1214
- package/node_modules/better-dsh/docs/superpowers/plans/2026-10-03-docs-packaging-trim.md +0 -181
- package/node_modules/better-dsh/docs/superpowers/specs/2026-10-02-ctx-navigation-design.md +0 -209
- package/node_modules/better-dsh/docs/upstream-dsh-0.1.5-rc.2-report.md +0 -156
- package/node_modules/better-dsh/dsh-docs/AGENTS.md +0 -75
- package/node_modules/better-dsh/dsh-docs/agent-lifecycle.md +0 -84
- package/node_modules/better-dsh/dsh-docs/agent-lifecycle.zh.md +0 -86
- package/node_modules/better-dsh/dsh-docs/api-gateway.md +0 -164
- package/node_modules/better-dsh/dsh-docs/api-gateway.zh.md +0 -164
- package/node_modules/better-dsh/dsh-docs/architecture.md +0 -150
- package/node_modules/better-dsh/dsh-docs/architecture.zh.md +0 -154
- package/node_modules/better-dsh/dsh-docs/baseline.md +0 -13
- package/node_modules/better-dsh/dsh-docs/capability-seams.md +0 -543
- package/node_modules/better-dsh/dsh-docs/capability-seams.zh.md +0 -545
- package/node_modules/better-dsh/dsh-docs/config-catalog.md +0 -3473
- package/node_modules/better-dsh/dsh-docs/config-catalog.zh.md +0 -3474
- package/node_modules/better-dsh/dsh-docs/cookbook/adding-a-package.md +0 -117
- package/node_modules/better-dsh/dsh-docs/cookbook/adding-a-package.zh.md +0 -119
- package/node_modules/better-dsh/dsh-docs/cookbook/adding-a-remote-api.md +0 -197
- package/node_modules/better-dsh/dsh-docs/cookbook/adding-a-remote-api.zh.md +0 -197
- package/node_modules/better-dsh/dsh-docs/cookbook/adding-a-session-format-version.md +0 -109
- package/node_modules/better-dsh/dsh-docs/cookbook/adding-a-session-format-version.zh.md +0 -109
- package/node_modules/better-dsh/dsh-docs/cookbook/adding-a-settings-card.md +0 -102
- package/node_modules/better-dsh/dsh-docs/cookbook/adding-a-settings-card.zh.md +0 -102
- package/node_modules/better-dsh/dsh-docs/cookbook/adding-a-tool.md +0 -101
- package/node_modules/better-dsh/dsh-docs/cookbook/adding-a-tool.zh.md +0 -103
- package/node_modules/better-dsh/dsh-docs/cookbook/adding-a-vendored-package.md +0 -59
- package/node_modules/better-dsh/dsh-docs/cookbook/adding-a-vendored-package.zh.md +0 -59
- package/node_modules/better-dsh/dsh-docs/cookbook/adding-an-llm-adapter.md +0 -43
- package/node_modules/better-dsh/dsh-docs/cookbook/adding-an-llm-adapter.zh.md +0 -43
- package/node_modules/better-dsh/dsh-docs/cookbook/extension-cookbook.md +0 -132
- package/node_modules/better-dsh/dsh-docs/cookbook/extension-cookbook.zh.md +0 -136
- package/node_modules/better-dsh/dsh-docs/cookbook/maintaining-dsh-code-review.md +0 -64
- package/node_modules/better-dsh/dsh-docs/cookbook/maintaining-dsh-code-review.zh.md +0 -64
- package/node_modules/better-dsh/dsh-docs/cookbook/responding-to-pr-review-on-a-stack.md +0 -32
- package/node_modules/better-dsh/dsh-docs/cookbook/responding-to-pr-review-on-a-stack.zh.md +0 -32
- package/node_modules/better-dsh/dsh-docs/cordis-api/context.md +0 -364
- package/node_modules/better-dsh/dsh-docs/cordis-api/context.zh.md +0 -366
- package/node_modules/better-dsh/dsh-docs/cordis-api/events.md +0 -207
- package/node_modules/better-dsh/dsh-docs/cordis-api/events.zh.md +0 -209
- package/node_modules/better-dsh/dsh-docs/cordis-api/fiber.md +0 -375
- package/node_modules/better-dsh/dsh-docs/cordis-api/fiber.zh.md +0 -377
- package/node_modules/better-dsh/dsh-docs/cordis-api/inherited.md +0 -39
- package/node_modules/better-dsh/dsh-docs/cordis-api/registry.md +0 -152
- package/node_modules/better-dsh/dsh-docs/cordis-api/registry.zh.md +0 -154
- package/node_modules/better-dsh/dsh-docs/cordis-api/service.md +0 -102
- package/node_modules/better-dsh/dsh-docs/cordis-api/service.zh.md +0 -104
- package/node_modules/better-dsh/dsh-docs/cordis-primer.md +0 -45
- package/node_modules/better-dsh/dsh-docs/cordis-primer.zh.md +0 -51
- package/node_modules/better-dsh/dsh-docs/cordis-tutorial/01-first-plugin.md +0 -95
- package/node_modules/better-dsh/dsh-docs/cordis-tutorial/01-first-plugin.zh.md +0 -95
- package/node_modules/better-dsh/dsh-docs/cordis-tutorial/02-lifecycle-and-effects.md +0 -98
- package/node_modules/better-dsh/dsh-docs/cordis-tutorial/02-lifecycle-and-effects.zh.md +0 -98
- package/node_modules/better-dsh/dsh-docs/cordis-tutorial/03-services.md +0 -98
- package/node_modules/better-dsh/dsh-docs/cordis-tutorial/03-services.zh.md +0 -98
- package/node_modules/better-dsh/dsh-docs/cordis-tutorial/04-events.md +0 -144
- package/node_modules/better-dsh/dsh-docs/cordis-tutorial/04-events.zh.md +0 -144
- package/node_modules/better-dsh/dsh-docs/cordis-tutorial/05-config.md +0 -84
- package/node_modules/better-dsh/dsh-docs/cordis-tutorial/05-config.zh.md +0 -84
- package/node_modules/better-dsh/dsh-docs/cordis-tutorial/06-composition-and-hmr.md +0 -113
- package/node_modules/better-dsh/dsh-docs/cordis-tutorial/06-composition-and-hmr.zh.md +0 -113
- package/node_modules/better-dsh/dsh-docs/cordis-tutorial/07-into-the-harness.md +0 -108
- package/node_modules/better-dsh/dsh-docs/cordis-tutorial/07-into-the-harness.zh.md +0 -108
- package/node_modules/better-dsh/dsh-docs/cordis-tutorial/index.md +0 -60
- package/node_modules/better-dsh/dsh-docs/cordis-tutorial/index.zh.md +0 -62
- package/node_modules/better-dsh/dsh-docs/deepseek-llm-api-wire-extensions.md +0 -163
- package/node_modules/better-dsh/dsh-docs/deepseek-llm-api-wire-extensions.zh.md +0 -163
- package/node_modules/better-dsh/dsh-docs/defensive-patterns.md +0 -33
- package/node_modules/better-dsh/dsh-docs/defensive-patterns.zh.md +0 -35
- package/node_modules/better-dsh/dsh-docs/development.md +0 -167
- package/node_modules/better-dsh/dsh-docs/development.zh.md +0 -173
- package/node_modules/better-dsh/dsh-docs/event-producer-consumer.md +0 -86
- package/node_modules/better-dsh/dsh-docs/event-producer-consumer.zh.md +0 -88
- package/node_modules/better-dsh/dsh-docs/glossary.md +0 -45
- package/node_modules/better-dsh/dsh-docs/glossary.zh.md +0 -45
- package/node_modules/better-dsh/dsh-docs/graph-atlas.md +0 -22
- package/node_modules/better-dsh/dsh-docs/graph-atlas.zh.md +0 -24
- package/node_modules/better-dsh/dsh-docs/i18n/README.md +0 -60
- package/node_modules/better-dsh/dsh-docs/i18n/README.zh.md +0 -62
- package/node_modules/better-dsh/dsh-docs/i18n/style-samples.md +0 -87
- package/node_modules/better-dsh/dsh-docs/i18n/terminology.md +0 -214
- package/node_modules/better-dsh/dsh-docs/i18n/translation-prompt.md +0 -263
- package/node_modules/better-dsh/dsh-docs/i18n/translation-rules.md +0 -69
- package/node_modules/better-dsh/dsh-docs/i18n/translation-rules.zh.md +0 -69
- package/node_modules/better-dsh/dsh-docs/module-graph.md +0 -1411
- package/node_modules/better-dsh/dsh-docs/module-graph.zh.md +0 -1413
- package/node_modules/better-dsh/dsh-docs/persistence-catalog.md +0 -1075
- package/node_modules/better-dsh/dsh-docs/persistence-catalog.zh.md +0 -1077
- package/node_modules/better-dsh/dsh-docs/postmortem/0001-acp-default-export-drops-inject.md +0 -113
- package/node_modules/better-dsh/dsh-docs/postmortem/0001-acp-default-export-drops-inject.zh.md +0 -113
- package/node_modules/better-dsh/dsh-docs/postmortem/0002-js-expression-disabled-filesystem-tools.md +0 -47
- package/node_modules/better-dsh/dsh-docs/postmortem/0002-js-expression-disabled-filesystem-tools.zh.md +0 -47
- package/node_modules/better-dsh/dsh-docs/postmortem/0003-web-agent-gui-feedback-loop.md +0 -53
- package/node_modules/better-dsh/dsh-docs/postmortem/0003-web-agent-gui-feedback-loop.zh.md +0 -53
- package/node_modules/better-dsh/dsh-docs/postmortem/0004-landlock-partial-notice-misclassified-child-failures.md +0 -55
- package/node_modules/better-dsh/dsh-docs/postmortem/0004-landlock-partial-notice-misclassified-child-failures.zh.md +0 -55
- package/node_modules/better-dsh/dsh-docs/postmortem/README.md +0 -18
- package/node_modules/better-dsh/dsh-docs/postmortem/README.zh.md +0 -18
- package/node_modules/better-dsh/dsh-docs/rescope.md +0 -53
- package/node_modules/better-dsh/dsh-docs/rescope.zh.md +0 -53
- package/node_modules/better-dsh/dsh-docs/session-format-status.md +0 -47
- package/node_modules/better-dsh/dsh-docs/session-format-status.zh.md +0 -47
- package/node_modules/better-dsh/dsh-docs/subsystems/README.md +0 -61
- package/node_modules/better-dsh/dsh-docs/subsystems/README.zh.md +0 -61
- package/node_modules/better-dsh/dsh-docs/subsystems/agent-team.md +0 -207
- package/node_modules/better-dsh/dsh-docs/subsystems/agent-team.zh.md +0 -207
- package/node_modules/better-dsh/dsh-docs/subsystems/approval.md +0 -170
- package/node_modules/better-dsh/dsh-docs/subsystems/approval.zh.md +0 -170
- package/node_modules/better-dsh/dsh-docs/subsystems/attachment.md +0 -351
- package/node_modules/better-dsh/dsh-docs/subsystems/attachment.zh.md +0 -351
- package/node_modules/better-dsh/dsh-docs/subsystems/client-modules.md +0 -168
- package/node_modules/better-dsh/dsh-docs/subsystems/client-modules.zh.md +0 -168
- package/node_modules/better-dsh/dsh-docs/subsystems/client-resources.md +0 -91
- package/node_modules/better-dsh/dsh-docs/subsystems/client-resources.zh.md +0 -91
- package/node_modules/better-dsh/dsh-docs/subsystems/code-runtime.md +0 -195
- package/node_modules/better-dsh/dsh-docs/subsystems/code-runtime.zh.md +0 -195
- package/node_modules/better-dsh/dsh-docs/subsystems/commands.md +0 -219
- package/node_modules/better-dsh/dsh-docs/subsystems/commands.zh.md +0 -219
- package/node_modules/better-dsh/dsh-docs/subsystems/compaction.md +0 -238
- package/node_modules/better-dsh/dsh-docs/subsystems/compaction.zh.md +0 -238
- package/node_modules/better-dsh/dsh-docs/subsystems/conversation.md +0 -258
- package/node_modules/better-dsh/dsh-docs/subsystems/conversation.zh.md +0 -258
- package/node_modules/better-dsh/dsh-docs/subsystems/core.md +0 -1209
- package/node_modules/better-dsh/dsh-docs/subsystems/core.zh.md +0 -1219
- package/node_modules/better-dsh/dsh-docs/subsystems/credentials.md +0 -329
- package/node_modules/better-dsh/dsh-docs/subsystems/credentials.zh.md +0 -329
- package/node_modules/better-dsh/dsh-docs/subsystems/extensions.md +0 -382
- package/node_modules/better-dsh/dsh-docs/subsystems/extensions.zh.md +0 -382
- package/node_modules/better-dsh/dsh-docs/subsystems/feedback.md +0 -266
- package/node_modules/better-dsh/dsh-docs/subsystems/feedback.zh.md +0 -266
- package/node_modules/better-dsh/dsh-docs/subsystems/filesystem.md +0 -505
- package/node_modules/better-dsh/dsh-docs/subsystems/filesystem.zh.md +0 -505
- package/node_modules/better-dsh/dsh-docs/subsystems/goal.md +0 -277
- package/node_modules/better-dsh/dsh-docs/subsystems/goal.zh.md +0 -277
- package/node_modules/better-dsh/dsh-docs/subsystems/invariants.md +0 -91
- package/node_modules/better-dsh/dsh-docs/subsystems/invariants.zh.md +0 -91
- package/node_modules/better-dsh/dsh-docs/subsystems/jobs.md +0 -290
- package/node_modules/better-dsh/dsh-docs/subsystems/jobs.zh.md +0 -290
- package/node_modules/better-dsh/dsh-docs/subsystems/llm-streaming.md +0 -1080
- package/node_modules/better-dsh/dsh-docs/subsystems/llm-streaming.zh.md +0 -1086
- package/node_modules/better-dsh/dsh-docs/subsystems/lsp.md +0 -202
- package/node_modules/better-dsh/dsh-docs/subsystems/lsp.zh.md +0 -202
- package/node_modules/better-dsh/dsh-docs/subsystems/permission-presets.md +0 -131
- package/node_modules/better-dsh/dsh-docs/subsystems/permission-presets.zh.md +0 -131
- package/node_modules/better-dsh/dsh-docs/subsystems/persistence.md +0 -395
- package/node_modules/better-dsh/dsh-docs/subsystems/persistence.zh.md +0 -395
- package/node_modules/better-dsh/dsh-docs/subsystems/plan.md +0 -87
- package/node_modules/better-dsh/dsh-docs/subsystems/plan.zh.md +0 -87
- package/node_modules/better-dsh/dsh-docs/subsystems/sandbox.md +0 -220
- package/node_modules/better-dsh/dsh-docs/subsystems/sandbox.zh.md +0 -220
- package/node_modules/better-dsh/dsh-docs/subsystems/schedule.md +0 -192
- package/node_modules/better-dsh/dsh-docs/subsystems/schedule.zh.md +0 -192
- package/node_modules/better-dsh/dsh-docs/subsystems/scope.md +0 -59
- package/node_modules/better-dsh/dsh-docs/subsystems/scope.zh.md +0 -59
- package/node_modules/better-dsh/dsh-docs/subsystems/session-projection.md +0 -354
- package/node_modules/better-dsh/dsh-docs/subsystems/session-projection.zh.md +0 -354
- package/node_modules/better-dsh/dsh-docs/subsystems/session-query.md +0 -509
- package/node_modules/better-dsh/dsh-docs/subsystems/session-query.zh.md +0 -509
- package/node_modules/better-dsh/dsh-docs/subsystems/session-reference.md +0 -219
- package/node_modules/better-dsh/dsh-docs/subsystems/session-reference.zh.md +0 -219
- package/node_modules/better-dsh/dsh-docs/subsystems/session-telemetry.md +0 -194
- package/node_modules/better-dsh/dsh-docs/subsystems/session-telemetry.zh.md +0 -194
- package/node_modules/better-dsh/dsh-docs/subsystems/session-title.md +0 -204
- package/node_modules/better-dsh/dsh-docs/subsystems/session-title.zh.md +0 -204
- package/node_modules/better-dsh/dsh-docs/subsystems/session.md +0 -1155
- package/node_modules/better-dsh/dsh-docs/subsystems/session.zh.md +0 -1159
- package/node_modules/better-dsh/dsh-docs/subsystems/settings.md +0 -405
- package/node_modules/better-dsh/dsh-docs/subsystems/settings.zh.md +0 -405
- package/node_modules/better-dsh/dsh-docs/subsystems/shell.md +0 -303
- package/node_modules/better-dsh/dsh-docs/subsystems/shell.zh.md +0 -303
- package/node_modules/better-dsh/dsh-docs/subsystems/sidebar-right.md +0 -148
- package/node_modules/better-dsh/dsh-docs/subsystems/sidebar-right.zh.md +0 -148
- package/node_modules/better-dsh/dsh-docs/subsystems/skills.md +0 -354
- package/node_modules/better-dsh/dsh-docs/subsystems/skills.zh.md +0 -354
- package/node_modules/better-dsh/dsh-docs/subsystems/slots.md +0 -175
- package/node_modules/better-dsh/dsh-docs/subsystems/slots.zh.md +0 -175
- package/node_modules/better-dsh/dsh-docs/subsystems/spill.md +0 -117
- package/node_modules/better-dsh/dsh-docs/subsystems/spill.zh.md +0 -117
- package/node_modules/better-dsh/dsh-docs/subsystems/storage.md +0 -260
- package/node_modules/better-dsh/dsh-docs/subsystems/storage.zh.md +0 -260
- package/node_modules/better-dsh/dsh-docs/subsystems/subagent.md +0 -766
- package/node_modules/better-dsh/dsh-docs/subsystems/subagent.zh.md +0 -770
- package/node_modules/better-dsh/dsh-docs/subsystems/subprocess.md +0 -324
- package/node_modules/better-dsh/dsh-docs/subsystems/subprocess.zh.md +0 -324
- package/node_modules/better-dsh/dsh-docs/subsystems/system-prompt.md +0 -220
- package/node_modules/better-dsh/dsh-docs/subsystems/system-prompt.zh.md +0 -220
- package/node_modules/better-dsh/dsh-docs/subsystems/terminal.md +0 -184
- package/node_modules/better-dsh/dsh-docs/subsystems/terminal.zh.md +0 -184
- package/node_modules/better-dsh/dsh-docs/subsystems/todo.md +0 -32
- package/node_modules/better-dsh/dsh-docs/subsystems/todo.zh.md +0 -32
- package/node_modules/better-dsh/dsh-docs/subsystems/token-meter.md +0 -105
- package/node_modules/better-dsh/dsh-docs/subsystems/token-meter.zh.md +0 -105
- package/node_modules/better-dsh/dsh-docs/subsystems/tools.md +0 -720
- package/node_modules/better-dsh/dsh-docs/subsystems/tools.zh.md +0 -720
- package/node_modules/better-dsh/dsh-docs/subsystems/typert.md +0 -343
- package/node_modules/better-dsh/dsh-docs/subsystems/typert.zh.md +0 -343
- package/node_modules/better-dsh/dsh-docs/subsystems/user-questions.md +0 -178
- package/node_modules/better-dsh/dsh-docs/subsystems/user-questions.zh.md +0 -178
- package/node_modules/better-dsh/dsh-docs/subsystems/web-client.md +0 -95
- package/node_modules/better-dsh/dsh-docs/subsystems/web-client.zh.md +0 -95
- package/node_modules/better-dsh/dsh-docs/subsystems/web-server.md +0 -154
- package/node_modules/better-dsh/dsh-docs/subsystems/web-server.zh.md +0 -154
- package/node_modules/better-dsh/dsh-docs/subsystems/web.md +0 -206
- package/node_modules/better-dsh/dsh-docs/subsystems/web.zh.md +0 -206
- package/node_modules/better-dsh/dsh-docs/subsystems/webhook.md +0 -70
- package/node_modules/better-dsh/dsh-docs/subsystems/webhook.zh.md +0 -70
- package/node_modules/better-dsh/dsh-docs/subsystems/workflow.md +0 -278
- package/node_modules/better-dsh/dsh-docs/subsystems/workflow.zh.md +0 -278
- package/node_modules/better-dsh/dsh-docs/subsystems/workspace.md +0 -321
- package/node_modules/better-dsh/dsh-docs/subsystems/workspace.zh.md +0 -321
- package/node_modules/better-dsh/dsh-docs/testing.md +0 -54
- package/node_modules/better-dsh/dsh-docs/testing.zh.md +0 -54
- package/node_modules/better-dsh/dsh-docs/tool-catalog.md +0 -2225
- package/node_modules/better-dsh/dsh-docs/tool-catalog.zh.md +0 -2233
- package/node_modules/better-dsh/dsh-docs/tool-execution-pipeline.md +0 -62
- package/node_modules/better-dsh/dsh-docs/tool-execution-pipeline.zh.md +0 -64
- package/node_modules/better-dsh/dsh-docs/user/develop/basic/config.md +0 -106
- package/node_modules/better-dsh/dsh-docs/user/develop/basic/config.zh.md +0 -106
- package/node_modules/better-dsh/dsh-docs/user/develop/basic/index.md +0 -144
- package/node_modules/better-dsh/dsh-docs/user/develop/basic/index.zh.md +0 -144
- package/node_modules/better-dsh/dsh-docs/user/develop/basic/publish.md +0 -183
- package/node_modules/better-dsh/dsh-docs/user/develop/basic/publish.zh.md +0 -183
- package/node_modules/better-dsh/dsh-docs/user/develop/basic/tool.md +0 -52
- package/node_modules/better-dsh/dsh-docs/user/develop/basic/tool.zh.md +0 -52
- package/node_modules/better-dsh/dsh-docs/user/develop/framework/events.md +0 -143
- package/node_modules/better-dsh/dsh-docs/user/develop/framework/events.zh.md +0 -143
- package/node_modules/better-dsh/dsh-docs/user/develop/framework/index.md +0 -137
- package/node_modules/better-dsh/dsh-docs/user/develop/framework/index.zh.md +0 -137
- package/node_modules/better-dsh/dsh-docs/user/develop/framework/service.md +0 -148
- package/node_modules/better-dsh/dsh-docs/user/develop/framework/service.zh.md +0 -150
- package/node_modules/better-dsh/dsh-docs/user/develop/practice/dynamic-cordis.md +0 -15
- package/node_modules/better-dsh/dsh-docs/user/develop/practice/dynamic-cordis.zh.md +0 -15
- package/node_modules/better-dsh/dsh-docs/user/develop/practice/index.md +0 -155
- package/node_modules/better-dsh/dsh-docs/user/develop/practice/index.zh.md +0 -155
- package/node_modules/better-dsh/dsh-docs/user/develop/practice/llm-adapter.md +0 -189
- package/node_modules/better-dsh/dsh-docs/user/develop/practice/llm-adapter.zh.md +0 -189
- package/node_modules/better-dsh/dsh-docs/user/guide/github-review.md +0 -102
- package/node_modules/better-dsh/dsh-docs/user/guide/github-review.zh.md +0 -102
- package/node_modules/better-dsh/dsh-docs/user/guide/index.md +0 -30
- package/node_modules/better-dsh/dsh-docs/user/guide/index.zh.md +0 -30
- package/node_modules/better-dsh/dsh-docs/user/guide/mcp-memory.md +0 -101
- package/node_modules/better-dsh/dsh-docs/user/guide/mcp-memory.zh.md +0 -101
- package/node_modules/better-dsh/dsh-docs/user/guide/network-proxy.md +0 -85
- package/node_modules/better-dsh/dsh-docs/user/guide/network-proxy.zh.md +0 -85
- package/node_modules/better-dsh/dsh-docs/user/guide/providers.md +0 -190
- package/node_modules/better-dsh/dsh-docs/user/guide/providers.zh.md +0 -190
- package/node_modules/better-dsh/dsh-docs/user/guide/python-sdk.md +0 -150
- package/node_modules/better-dsh/dsh-docs/user/guide/python-sdk.zh.md +0 -150
- package/node_modules/better-dsh/dsh-docs/user/guide/schedule.md +0 -21
- package/node_modules/better-dsh/dsh-docs/user/guide/schedule.zh.md +0 -21
- package/node_modules/better-dsh/dsh-docs/user/index.md +0 -11
- package/node_modules/better-dsh/dsh-docs/user/index.zh.md +0 -11
- package/node_modules/better-dsh/dsh-docs/web-styling.md +0 -29
- package/node_modules/better-dsh/dsh-docs/web-styling.zh.md +0 -29
- package/node_modules/better-dsh/eval-description.md +0 -33
- package/node_modules/better-dsh/lib/BrowserWebSocketTransport-D1aFReu_.js +0 -4
- package/node_modules/better-dsh/lib/BrowserWebSocketTransport-wm99h94r.js +0 -39
- package/node_modules/better-dsh/lib/LaunchOptions-B874eBu2.js +0 -4
- package/node_modules/better-dsh/lib/LaunchOptions-kGXcZOe0.js +0 -17
- package/node_modules/better-dsh/lib/NodeWebSocketTransport-BRLjmu2R.js +0 -4
- package/node_modules/better-dsh/lib/NodeWebSocketTransport-D9ysYGLM.js +0 -3634
- package/node_modules/better-dsh/lib/ast-assets/ast-grep.wasm +0 -0
- package/node_modules/better-dsh/lib/ast-assets/tree-sitter-bash.wasm +0 -0
- package/node_modules/better-dsh/lib/ast-assets/tree-sitter-c.wasm +0 -0
- package/node_modules/better-dsh/lib/ast-assets/tree-sitter-cpp.wasm +0 -0
- package/node_modules/better-dsh/lib/ast-assets/tree-sitter-css.wasm +0 -0
- package/node_modules/better-dsh/lib/ast-assets/tree-sitter-go.wasm +0 -0
- package/node_modules/better-dsh/lib/ast-assets/tree-sitter-html.wasm +0 -0
- package/node_modules/better-dsh/lib/ast-assets/tree-sitter-javascript.wasm +0 -0
- package/node_modules/better-dsh/lib/ast-assets/tree-sitter-json.wasm +0 -0
- package/node_modules/better-dsh/lib/ast-assets/tree-sitter-python.wasm +0 -0
- package/node_modules/better-dsh/lib/ast-assets/tree-sitter-ruby.wasm +0 -0
- package/node_modules/better-dsh/lib/ast-assets/tree-sitter-rust.wasm +0 -0
- package/node_modules/better-dsh/lib/ast-assets/tree-sitter-tsx.wasm +0 -0
- package/node_modules/better-dsh/lib/ast-assets/tree-sitter-typescript.wasm +0 -0
- package/node_modules/better-dsh/lib/ast-assets/tree-sitter-yaml.wasm +0 -0
- package/node_modules/better-dsh/lib/ast-assets/tree-sitter.wasm +0 -0
- package/node_modules/better-dsh/lib/bidi-BalpKaJc.js +0 -16106
- package/node_modules/better-dsh/lib/bundle-delivery.d.ts +0 -20
- package/node_modules/better-dsh/lib/bundle-delivery.js +0 -212
- package/node_modules/better-dsh/lib/chunk-DQxbwPpZ.js +0 -30
- package/node_modules/better-dsh/lib/client/index.js +0 -712
- package/node_modules/better-dsh/lib/compaction/index.d.ts +0 -57
- package/node_modules/better-dsh/lib/compaction/index.js +0 -145
- package/node_modules/better-dsh/lib/failover/index.d.ts +0 -59
- package/node_modules/better-dsh/lib/failover/index.js +0 -147
- package/node_modules/better-dsh/lib/fs-aware/sandbox-plugin.d.ts +0 -71
- package/node_modules/better-dsh/lib/fs-aware/sandbox-plugin.js +0 -249
- package/node_modules/better-dsh/lib/hmr.d.ts +0 -32
- package/node_modules/better-dsh/lib/hmr.js +0 -49
- package/node_modules/better-dsh/lib/index-DTDXUe6m.d.ts +0 -208
- package/node_modules/better-dsh/lib/index-browser-CysrjMyM.js +0 -21061
- package/node_modules/better-dsh/lib/index.d.ts +0 -705
- package/node_modules/better-dsh/lib/index.js +0 -3816
- package/node_modules/better-dsh/lib/kernel-bridge.py +0 -172
- package/node_modules/better-dsh/lib/kernel-env-D8UOWeji.js +0 -195
- package/node_modules/better-dsh/lib/kernel-env.d.ts +0 -80
- package/node_modules/better-dsh/lib/kernel-env.js +0 -3
- package/node_modules/better-dsh/lib/lib-C8_jXvwA.js +0 -894
- package/node_modules/better-dsh/lib/lsp-server-registry-BXvUTBY7.js +0 -3
- package/node_modules/better-dsh/lib/lsp-server-registry-CH9WNFFt.js +0 -972
- package/node_modules/better-dsh/lib/main-BQeFrBM1.js +0 -3
- package/node_modules/better-dsh/lib/main-CupOhMp5.js +0 -1432
- package/node_modules/better-dsh/lib/mobile/plugin.d.ts +0 -29
- package/node_modules/better-dsh/lib/mobile/plugin.js +0 -54
- package/node_modules/better-dsh/lib/native-capture-BEByDXYM.js +0 -68
- package/node_modules/better-dsh/lib/puppeteer-core-CSk2PtSm.js +0 -1136
- package/node_modules/better-dsh/lib/py-sdk-D7klhpWb.js +0 -178
- package/node_modules/better-dsh/lib/py-sdk.d.ts +0 -19
- package/node_modules/better-dsh/lib/py-sdk.js +0 -3
- package/node_modules/better-dsh/lib/remote/plugin.d.ts +0 -24
- package/node_modules/better-dsh/lib/remote/plugin.js +0 -1190
- package/node_modules/better-dsh/lib/url-schemes/index.d.ts +0 -88
- package/node_modules/better-dsh/lib/url-schemes/index.js +0 -12229
- package/node_modules/better-dsh/lib/util-BHL_dfV_.js +0 -2953
- package/node_modules/better-dsh/lib/wasm_bg-CNXhHjVg.js +0 -1291
- package/node_modules/better-dsh/lib/web-password.d.ts +0 -156
- package/node_modules/better-dsh/lib/web-password.js +0 -562
- package/node_modules/better-dsh/lib/web-tree-sitter-CPrPD4J2.js +0 -3440
- package/node_modules/better-dsh/lib/web-trust-D6gJpUMf.js +0 -393
- package/node_modules/better-dsh/lib/web-trust-Dej_RI2B.d.ts +0 -113
- package/node_modules/better-dsh/lib/web-trust.d.ts +0 -3
- package/node_modules/better-dsh/lib/web-trust.js +0 -4
- package/node_modules/better-dsh/lib/webserver.d.ts +0 -10
- package/node_modules/better-dsh/lib/webserver.js +0 -19
- package/node_modules/better-dsh/lib/welcome-notice.d.ts +0 -18
- package/node_modules/better-dsh/lib/welcome-notice.js +0 -59
- package/node_modules/better-dsh/lib/wrap-T4I0nfPM.js +0 -750
- package/node_modules/better-dsh/package.json +0 -426
- package/node_modules/better-dsh/scripts/kernel-provision.mjs +0 -35
- package/node_modules/better-dsh/scripts/register-bundle.mjs +0 -80
- package/node_modules/better-dsh/url-schemes-instruction.md +0 -22
|
@@ -1,67 +0,0 @@
|
|
|
1
|
-
# v0.2.1d 实测报告(v0-2-1d-tool-runtime-scheduler-mount 第一人称实测)
|
|
2
|
-
|
|
3
|
-
- 部署:lib 版本 `0.2.1-d`(工作区 `dashr/package.json` `0.2.1-d`;部署位 lib 逐字节一致,package.json 版本字段漂移见 O-1),profile web;部署同步 18:19:03、daemon 重启 18:38:12,本会话运行于更新后的运行时
|
|
4
|
-
- 被测内容:**本 change**(`openspec/changes/v0-2-1d-tool-runtime-scheduler-mount/`)——根因更正(dual-copy)下的「registry 获取保持原样」裁决(D2)、guard 自诊断增强(2.2)、symbol 同一性回归测试(2.4)、活体 4 探针矩阵回归基线(4.1/4.2)
|
|
5
|
-
- 实测人:被测 Dash Agent 运行时本体(第一人称);探针经 `eval` cell 内 `tool.<name>(...)` 直接调用 REPL 子分派桥——与 v0.2.1b 崩溃矩阵、v0.2.1c loud 错误矩阵完全同路径
|
|
6
|
-
- 对应任务清单:tasks.md 4.1 / 4.2 / 4.3(以及 2.2 / 2.4 交付物落位复核)——本报告即该核验的记录
|
|
7
|
-
|
|
8
|
-
## 部署核验(实测前置)
|
|
9
|
-
|
|
10
|
-
- 版本:工作区 `dashr/package.json` = `0.2.1-d` ✅;部署位 package.json 版本字段仍为 `0.2.1-c`(**元数据漂移,非代码漂移**,见 O-1)
|
|
11
|
-
- md5 核验(工作区 `dashr/lib` ↔ 部署位 `~/.dsh/profiles/web/node_modules/@pgmi-builds/better-dsh/lib`):
|
|
12
|
-
|
|
13
|
-
| 文件 | 工作区 | 部署位 | 一致 |
|
|
14
|
-
|---|---|---|---|
|
|
15
|
-
| index.js | `56db6ef89f2750dc8fa4b11fefad7654` | 同左 | ✅ |
|
|
16
|
-
| client/index.js | `8b1548613b5d68ef4606f4729b0af312` | 同左 | ✅ |
|
|
17
|
-
|
|
18
|
-
- `diff -rq lib/` 两侧 **LIB DIRS IDENTICAL** ✅
|
|
19
|
-
- 时间线:部署位 lib/index.js mtime `18:19:03` → daemon `Stopping 18:38:11` → `Started 18:38:12`(journal)——**重启晚于同步,运行代码即新 lib** ✅
|
|
20
|
-
- 产物内容抽查:v0.2.1d guard 新错误文本在部署 lib/index.js 中逐字在位——含 `Most likely a dual-copy dsh-tools` 诊断、`This plugin resolves @deepseek-ai/dsh-tools from: ${resolvedFrom}` 自诊断路径、`only schemastery and cosmokit belong there` 部署纪律提示 ✅(源码位 `src/index.ts:691-709`,`createRequire(import.meta.url).resolve(...)` 取插件位解析路径)
|
|
21
|
-
|
|
22
|
-
## §1 4 探针矩阵(4.1 回归核验,第一人称)
|
|
23
|
-
|
|
24
|
-
对照 v0.2.1b 诊断矩阵(`docs/REPL-工具调用-截断诊断.md` §一)与 v0.2.1c 实测矩阵,同路径 cell 在**本会话(v0.2.1d 运行态)**重跑:
|
|
25
|
-
|
|
26
|
-
| # | cell 内容 | v0.2.1b | v0.2.1c | v0.2.1d 实测结果 | 判定 |
|
|
27
|
-
|---|---|---|---|---|---|
|
|
28
|
-
| 1 | `await tool.subagent({… run_in_background: false})` | 截断(崩溃 17:39:17) | loud 错误 | **真实结果**:前台 runId `7c7b6b1e…`,子代理真实执行并输出 `PROBE-OK`(5.4s) | ✅ |
|
|
29
|
-
| 2 | `await tool.subagent({… run_in_background: true})` | 截断(崩溃 17:41:15) | loud 错误 | **真实结果**:受理返回 `{"kind":"continuable","subagentId":"90d8e8f9…"}`,子代理异步完成,关闭消息 `4247`(= 137×31,答案正确)——端到端闭环 | ✅ |
|
|
30
|
-
| 3 | `await tool.bash({… run_in_background: true})` | 截断(崩溃 17:57:05) | loud 错误 | **真实结果**:job `bash-1`,`job_output` 收割 stdout `PROBE3-BG-OK\nPROBE3-BG-DONE\n`,status completed(2.0s) | ✅ |
|
|
31
|
-
| 4 | `await tool.read({path: "dashr/package.json"})` | 截断(崩溃 18:02:27) | loud 错误 | **真实结果**:11591 字符真实内容(hashline 锚点格式),`"version": "0.2.1-d"` 可见 | ✅ |
|
|
32
|
-
|
|
33
|
-
- **4/4 全部返回真实执行结果**——既非 v0.2.1b 的截断/崩溃,也非 v0.2.1c 的 loud `ToolCallError`。三版本同路径对照:崩溃 → 可见错误 → **真实可用**,递进完整。
|
|
34
|
-
- 探针 2 的响应形态为 continuable subagent(durable `subagentId`)而非 jobId,`job_output` 不适用;子代理结果经 runtime 落地通知回收(本会话已收到,payload 正确)——与 job 型后台(探针 3 的 `bash-1`)是两种正常形态,记入 O-2。
|
|
35
|
-
|
|
36
|
-
## §2 journald 守护进程日志(4.2 铁证)
|
|
37
|
-
|
|
38
|
-
- 自重启时刻 `18:38:12` 起(探针全部完成后于 18:43 复扫):`journalctl --user -u dsh.service --since "18:38:12"` grep `fatal|TypeError|FAILURE|crashed|exit(1)` → **0 条匹配**;journal 仅 19 行正常启动 INFO(MCP 注册、`Successfully registered all tools`、dsh web URL)。
|
|
39
|
-
- 对照:v0.2.1b 的 17:39:17 / 17:41:15 / 17:57:05 / 18:02:27 四条 fatal load failure 已不再出现;v0.2.1c 时点的 loud 错误路径本轮探针一次都未触发(4/4 走正常调度器)。
|
|
40
|
-
- 4 探针执行期间及之后 daemon 持续存活(pid 1951131),后续 cell 正常执行——探针不再是「进程杀手」,而是普通工具调用。
|
|
41
|
-
|
|
42
|
-
## §3 根因更正与交付边界复核(design Context/D2 活体确认)
|
|
43
|
-
|
|
44
|
-
- **4/4 真实结果即根因更正的活体终验**:现行生产拓扑(① 层 symlink 清理后)下 `runtimeCtx.tools` plain read 返回带 `[TOOL_RUNTIME_SCHEDULER]` 的原生实例——design「shadow 视图从未在活体上出现、真实根因是部署拓扑 dual-copy」的裁决由本轮矩阵再次确认。候选 A/B/C/D 无需实施,registry 获取保持 `const registry = runtimeCtx.tools` 原样(源码走查未见改动,符合 D2)。
|
|
45
|
-
- **v0.2.1d 交付物落位**:
|
|
46
|
-
- guard 自诊断(2.2):源码 `src/index.ts:691-709` + 部署产物逐字在位;本轮 4/4 探针正常路径未触发该分支(预期行为——guard 只在 dual-copy 复发时发声)。
|
|
47
|
-
- symbol 同一性回归测试(2.4):`test/bridge.spec.ts:586` 用例 `v0.2.1d — the mounted ToolRuntime is keyed by the SAME symbol this plugin imports (dual-copy invariant)` 在位,断言经本文件 import 的 symbol 读出 scheduler 且 `prepare/dispatch/finalize/finish` 四方法为函数。
|
|
48
|
-
- 交付边界:本 change 的目标「REPL `tool.*` 子分派真实执行并返回结果」**已在活体上达成**;防御纵深保留(v0.2.1c 判空 guard + v0.2.1d 自诊断文本)作为未来 dual-copy 事件的第一现场。
|
|
49
|
-
|
|
50
|
-
## §4 测试套件
|
|
51
|
-
|
|
52
|
-
- `npx vitest run`(本轮实测重跑):**31 files、400 passed = 400 绿、exit 0**(127.95s)——399 旧用例 + 1 新 symbol 同一性用例,与 tasks.md 2.2 记录一致;含 v0.2.1c 的 3 个韧性回归用例与 v0.2.1d 的 dual-copy invariant 用例,本轮活体行为(真实调度、guard 未触发、零崩溃)与套件断言一一对应。
|
|
53
|
-
|
|
54
|
-
## 观察(非缺陷)
|
|
55
|
-
|
|
56
|
-
| # | 级 | 观察 |
|
|
57
|
-
|---|---|---|
|
|
58
|
-
| O-1 | 记录 | 部署位 package.json 版本字段仍为 `0.2.1-c`(工作区 `0.2.1-d`)——部署同步只携带 `lib/`,版本元数据漂移与既有 profile 锁版本漂移同类;lib 已逐字节一致,无碍运行,建议下次部署同步时连带 package.json |
|
|
59
|
-
| O-2 | 记录 | 探针 2 后台 subagent 的响应形态是 continuable(`subagentId`)而非 job(`jobId`),收割走 runtime 落地通知而非 `job_output`;探针 3 后台 bash 则是 job 形态——两种后台形态并存为设计使然,报告记录以免后续误判 |
|
|
60
|
-
| O-3 | 记录 | agent 的 bash 执行环境内 `systemctl --user` 总线不可达(`No data available`),daemon 状态改经 `journalctl --user -u dsh.service` 取证成功——环境观察,非被测对象问题 |
|
|
61
|
-
|
|
62
|
-
## 结果
|
|
63
|
-
|
|
64
|
-
**总体判定:v0.2.1d 的目标在活体 daemon 上全部成立——REPL `tool.*` 子分派真实可用(4 探针矩阵 4/4 返回真实执行结果,前台/后台/bash/读写四形态全覆盖);自重启(18:38:12)起 journal 0 条崩溃;guard 自诊断与 symbol 同一性回归双交付物在源码、产物、测试三层落位;测试套件 400 全绿。**
|
|
65
|
-
|
|
66
|
-
- tasks.md 4.1(4 探针 4/4 真实结果)✅、4.2(journal 0 崩溃)✅、4.3(本报告)✅;2.2 / 2.4 交付物复核 ✅。
|
|
67
|
-
- 三版本递进就此闭环:v0.2.1b(崩溃复现)→ v0.2.1c(不崩溃 + loud 错误)→ **v0.2.1d(真实可用 + dual-copy 根因更正 + 自诊断防御)**。根因(部署拓扑 dual-copy symbol 分裂)已由 symlink 清理消除,不变量已由回归测试与 guard 自诊断双锚锁定。
|
|
@@ -1,136 +0,0 @@
|
|
|
1
|
-
# v0.2.1e-P1 实测/观察记录(eval REPL 语义 · 沙箱后端 · 内核 fs reach —— alpha.5 对齐输入)
|
|
2
|
-
|
|
3
|
-
- 日期/实例:2026-09-03;Dev/Test 1 源码级 4999 实例(checkout `dsh-v0.1.2-alpha.5` detached `db6bdc3576`,`DSH_HOME=.dsh-test`);workspace `@pgmi-builds/better-dsh` = `0.2.1-d`(版本波 v0.2.1e 前置)
|
|
4
|
-
- 被测:`eval`(dashr-repl 持久 IPython 内核)执行引擎与 cell 语义;agent 原生 `bash` 的进程沙箱后端可用性;eval 内核进程的 fs reach 边界
|
|
5
|
-
- 实测人:被测运行时上的 Dash Agent(第一人称);探针经 `eval` cell 双路径——cell 内裸 Python 与 cell 内 `tool.*` 绑定——及原生工具
|
|
6
|
-
- 定位:v0.2.1e-P1(align upstream alpha.5)的**输入记录**——openspec/changes 尚无 v0-2-1e scaffold,本报告不预设验收点,只落事实/裁定/待决,供 phase owner 续建 tasks.md
|
|
7
|
-
- 关联记录:`upstream-dsh-0.1.2-alpha.5-local-test-report.md`(同实例 2026-09-02);`v0.2.1d-实测报告.md`(0.2.1-d 波收口);change `2026-09-02-kernel-provisioning-completeness`(venv 供给,403/403 全绿)
|
|
8
|
-
|
|
9
|
-
## §1 探针事实(本会话实证)
|
|
10
|
-
|
|
11
|
-
| # | 探针 | 实测结果 | 判定 |
|
|
12
|
-
|---|---|---|---|
|
|
13
|
-
| 1 | 引擎身份:cell 内 `import IPython` + sys 探针 | IPython **9.17.1** / ipykernel **7.3.0** / `ZMQInteractiveShell`;`sys.executable` = `…/packages/better-dsh/better-dsh/.venv-kernel/bin/python`(**CPython 3.11.15**,plugin 管理 venv,与 kernel-provisioning 任务 4.1「kernel ready: python 3.11.15」吻合);进程身份 uid 1000 (u1);**内核 cwd = 本 agent 会话工作区 `/home/u1/workspaces/temp`**(解释器在 checkout venv、cwd 在工作区,两处不同目录) | eval 是**真持久 IPython 内核**,非逐调用子进程 |
|
|
14
|
-
| 2 | 跨 cell 状态:`x = 42` 后次 cell 读 | 值仍在 → 单内核进程跨 cell 存活 | REPL 状态语义 ✅ |
|
|
15
|
-
| 3 | cell 语义:裸表达式 / 语句 cell | 模块作用域;末表达式值回传、`None` 抑制(displayhook 式) | ✅ |
|
|
16
|
-
| 4 | 顶层 `return`:`return 42` | `SyntaxError: 'return' outside function`,由**包装侧 `_DashrTopLevelReturnChecker` AST visitor 主动抛**(wrapper pre-parse,`_dashr_run_program` 帧内),非内核自然报错 | 语义有意强制,对齐 native IPython cell |
|
|
17
|
-
| 5 | `%` 行 magic:`%time x = 6 * 7` | wrapper `_dashr_ast.parse` 即 `SyntaxError: invalid syntax`——**行 magic 不转换**,内核未收到该行 | 与「pure IPython REPL semantics」宣称(`src/python.ts`、README)的可见偏差 → C1 |
|
|
18
|
-
| 6 | cell 内 `tool.*`:`await tool.glob({…})` | 返回 4 个真实文件(`v0.2.1{,b,c,d}-实测报告.md`),与原生调用同路径同结果 | REPL 内工具调用 = 工具面另一入口,非新能力 → §2 平面 A |
|
|
19
|
-
| 7 | agent 原生 bash:`pwd`(workspace-write) | **拒**:`no sandbox backend is usable on this host`(bubblewrap / Landlock / sandbox-exec / ACL 全缺),runner 拒绝非受限执行;仅 `danger-full-access`(需审批)可跑 | 环境事实,非插件缺陷 → §3 |
|
|
20
|
-
|
|
21
|
-
## §2 裁定:fs reach 的两个平面(用户裁定 + 推理确认)
|
|
22
|
-
|
|
23
|
-
- **平面 A —— 被认可的工具面**:cell 内 `tool.*` 与 agent 原生工具调用走**同一条 bridge → tool-service 路径**(同一校验/掩码/策略/日志,auto-bridge 机制见 `src/bridges/index.ts`)。read/write 等原生工具**本就持真实 fs**——它们的收窄(workspace-write、mask)来自工具面的策略层,不是虚拟化。
|
|
24
|
-
- **平面 B —— 解释器裸达**:cell 内裸 Python(`open`/`os`/`shutil`/…)以内核进程身份执行,达 = host 用户(u1/1000)的达。
|
|
25
|
-
- **裁定 ①**:「内核有 host-user fs reach」**在 REPL 使用场景本来就是如此**——交互式 IPython/Jupyter 内核即以启动用户身份运行、持其全达;better-dsh 供给受管 venv 内核 = 「用户的 Python REPL」,未做 OS 级逐调用沙箱是 REPL 的固有语义,**不是插件开的洞**。此前把这点标为 caveat 的措辞收回。
|
|
26
|
-
- **裁定 ②**:本 agent 运行场景中 eval 只是 agent 的工具之一;原生工具本就有真实 fs 达 → 内核达相对工具套件**不是异常**。因此 **eval 的强制边界 = 平面 A(工具面)+ 掩码/策略,不是平面 B(解释器)**。
|
|
27
|
-
- 推论:安全评审/对齐评审不应把 B 平面裸达记作 sandbox escape 缺陷;若 alpha.5 侧期望 run_code OS 级逐调用受限,**有状态持久内核无法廉价满足**(逐调用沙箱与驻留状态互斥)——是设计取舍而非缺陷(关联 `10_plans/dashr-blueprint.md` phase 2 fork-server 复用父内核状态的方向)。
|
|
28
|
-
|
|
29
|
-
## §3 沙箱后端环境观察(非插件缺陷)
|
|
30
|
-
|
|
31
|
-
- 本会话 agent bash:`workspace-write` → 拒(no sandbox backend usable on this host)。文件工具(read/grep/glob)、`eval`、cell 内 `tool.*` 均不受影响——各自独立的强制面,不依赖该进程沙箱后端。
|
|
32
|
-
- 对照 v0.2.1b–d 矩阵期:v0.2.1d 报告 §1 探针 3(cell 内 `tool.bash` 后台 job 真实执行)与 §2(journalctl 取证)证明**当时 agent bash 可用** → 同 4999 实例、不同会话/时刻的 backend 可用性存在差异(daemon profile / 装配差异?)。**环境 delta,未定位**,列为 O-1,请 phase 复看是否与 alpha.5 的沙箱装配相关。
|
|
33
|
-
- 影响:需 bash 的取证路径(如 journalctl)在本会话须走 `danger-full-access` 审批,或改用无 bash 取证路径。
|
|
34
|
-
|
|
35
|
-
## §4 对 v0.2.1e-P1(alpha.5 对齐)的输入(待决清单)
|
|
36
|
-
|
|
37
|
-
| # | 议题 | 证据/出处 | 建议去向 |
|
|
38
|
-
|---|---|---|---|
|
|
39
|
-
| C1 | `%` 行 magic 不转换 vs 「pure IPython REPL semantics」宣称 | §1-5;`src/python.ts`、README、`control-prompt.md` 措辞 | 决策:pre-parse 前对顶层 magic 行做变换(对齐真 IPython cell),或文档化「line magic 不支持」;配套回归用例 |
|
|
40
|
-
| C2 | 进程沙箱 backend 缺失 → agent bash 在 workspace-write 不可用 | §1-7、§3 | 核 alpha.5 是否改动沙箱装配/backend 探测;文档补 backend 要求与 `danger-full-access` 升级语义(关联 `10_plans/dashr-sandbox-escalation-semantics-gap.md`) |
|
|
41
|
-
| C3 | 内核身份双位:解释器在 `…/better-dsh/.venv-kernel/bin/python`、cwd 在 agent 工作区 | §1-1 | alpha.5 若改 runtime 启动布局,核对 kernel spawn 路径/cwd 语义不漂移;文档化 |
|
|
42
|
-
| C4 | eval 强制边界陈述(= 平面 A + 掩码;B 平面裸达 = REPL 固有语义) | §2 | 沉淀为文档(README 安全一节或 ADR),防安全评审误读 |
|
|
43
|
-
| C5 | venv 供给与 alpha.5 联动 | change `2026-09-02-kernel-provisioning-completeness`(403/403 全绿) | alpha.5 对齐波不重开供给任务;其 5.2 未决项(prod 装机路径)在 alpha.5 版本复跑一次 |
|
|
44
|
-
|
|
45
|
-
## 观察(非缺陷)
|
|
46
|
-
|
|
47
|
-
| # | 级 | 观察 |
|
|
48
|
-
|---|---|---|
|
|
49
|
-
| O-1 | 记录 | 沙箱 backend 可用性会话间差异(同 4999 实例:v0.2.1d 矩阵期 bash 可用 → 本会话拒)——环境 delta,未定位 |
|
|
50
|
-
| O-2 | 记录 | 内核解释器与 cwd 分处两目录(venv 在 checkout、cwd 在 agent 工作区),勿误判「内核在插件目录运行」 |
|
|
51
|
-
| O-3 | 记录 | openspec/changes 尚无 v0-2-1e scaffold、workspace package.json 仍 `0.2.1-d`——本报告为 v0.2.1e 波首个落盘件,任务编号(P1…Pn)待 phase owner 对齐 |
|
|
52
|
-
|
|
53
|
-
## 结果
|
|
54
|
-
|
|
55
|
-
---
|
|
56
|
-
|
|
57
|
-
## §5 Phase-owner 后补(2026-09-03,wrap-up)
|
|
58
|
-
|
|
59
|
-
### 5.1 版本与构建落位
|
|
60
|
-
|
|
61
|
-
- workspace `@pgmi-builds/better-dsh` 版本 `0.2.1-d` → **`0.2.1-e`**(canonical + monorepo 副本 + tsdown 重建,9 files / 514.94 kB;O-3 关闭)。change 对应关系:v0.2.1e 波 = alpha.5 对齐;P1 = `2026-09-02-kernel-provisioning-completeness`(**10/11**,唯一遗留 5.2 的 prod 装机路径核验,按定义留发布时;403/403 全绿、EROFS 模拟、无 uv 兜底、冷启动 spin-up 供给详见该 change tasks 注记与 `docs/kernel-provisioning.md`)。
|
|
62
|
-
|
|
63
|
-
### 5.2 C2/O-1 关闭:沙箱后端缺失根因 = 嵌套沙箱,非构建、非上游
|
|
64
|
-
|
|
65
|
-
- **复现**:在 agent 沙箱化 bash 内执行 bwrap 功能探测(`packages/sandbox/sandbox-local` 的 `defaultProbeBwrap` 同形命令)→ `bwrap: No permissions to create a new namespace`(exit 1)。前一代 4999 daemon 正是从沙箱化 bash 后台任务启动的——daemon 继承沙箱环境,自身再 spawn bwrap 即嵌套,探测必败 → `SANDBOX_UNAVAILABLE`(bwrap/Landlock/…全判缺)。
|
|
66
|
-
- **对照解释**:v0.2.1d 期实例的 daemon 启动自非嵌套上下文 → 探测通过、bash 可用。上游 alpha.5 的 workspace-write 沙箱本身无恙;我们的 build 也无恙。
|
|
67
|
-
- **修复**:daemon 改经 `systemd-run --user` 启动于沙箱之外(unit `dsh-4999-test`,与 prod 的 systemd 形态对齐;stdout/stderr 落 `.scratch/dsh-4999.log` 取 token)。当前 token:`qzwIUV1nwVsixUfW8sa-sgodW8uSQAyCzi7XHtflfAc`。**验收建议**:在 4999 开 session 跑任意 bash 命令(如 `pwd`)——应正常沙箱执行而非 `SANDBOX_UNAVAILABLE`。
|
|
68
|
-
- **约定固化**(AGENTS.md 已更新):agent 从沙箱会话重启 4999 一律走 systemd-run --user;勿从沙箱化 bash 直接拉 daemon。
|
|
69
|
-
|
|
70
|
-
### 5.3 C 编号处置表
|
|
71
|
-
|
|
72
|
-
| # | 处置 |
|
|
73
|
-
|---|---|
|
|
74
|
-
| C1(line magic 不转换) | 留 v0.2.1e 波后续任务(failover 阶段后的收口池):决策「pre-parse 变换顶层 magic 行」vs「文档化不支持」+ 回归用例 |
|
|
75
|
-
| C2(沙箱后端缺失) | **已关闭**(本节 5.2,根因+修复+约定) |
|
|
76
|
-
| C3(内核解释器/cwd 双位) | 留收口池:alpha.5 布局语义核对 + 文档化(本轮 AGENTS.md/供给文档已部分覆盖) |
|
|
77
|
-
| C4(eval 强制边界陈述) | 留收口池:README 安全一节或 ADR 沉淀 §2 裁定(防安全评审误读) |
|
|
78
|
-
| C5(venv 供给联动) | **已收敛**:kernel change 10/11,prod 装机路径随发布复跑 |
|
|
79
|
-
|
|
80
|
-
### 5.4 波内范围调整(user 裁决 2026-09-03)
|
|
81
|
-
|
|
82
|
-
- 两个 user 私人 Web UI patch(loopback auth / mobile responsiveness)**移出本波**:change 目录迁至 `openspec/deferred/`(内容保留)——user 对这批 patch 有新想法,将合并到后续 change 一起做。本波 active = kernel(收口)+ model-failover(下一阶段,Phase 2)。
|
|
83
|
-
**总体判定:本会话实测回答了两个开放疑问——(a) `eval` 是否真 IPython REPL:是**(持久 `ZMQInteractiveShell` 内核,模块作用域/displayhook/顶层 return 语义对齐 native IPython cell;唯一可见偏差是 `%` 行 magic 不转换,C1);**(b) 内核 host-user fs reach 是否缺陷:否**——REPL 场景固有语义,eval 的强制边界在工具面(平面 A)而非解释器(平面 B),见 §2 裁定。无阻断性发现。C1–C5 作为 v0.2.1e-P1 tasks.md 的骨架输入;phase owner 建 v0-2-1e change 后按 C 编号回填验收。
|
|
84
|
-
|
|
85
|
-
### 5.5 Phase 2 收口补记(2026-09-03)
|
|
86
|
-
|
|
87
|
-
failover settings 面(`model-failover-settings-surface`,9/9):原生链路核实定论——settings 行 = client bundle 内 slot 注册(`ctx.slots.inject('settings.general.item', …)`),FailoverRow 与 locale/ui-chat 原生行同构,**无纯服务端注册替代面**;副本构建用 `tsx scripts/build-client.ts` 直跑(`npm run` 死于 npm 自身 workspace 枚举,vendor/CLAUDE.md ENOTDIR);4999 boot graph 含插件行、HTTP 200 与产物字节一致;**user GUI 确认 FailoverRow 呈现**;全量 403/403 + tsc 0 错。v0.2.1e 本地 commit + tag 落位。
|
|
88
|
-
|
|
89
|
-
## §6 复测(daemon 重启后,2026-09-03)——§5.2 验收判据实测确认
|
|
90
|
-
|
|
91
|
-
应 owner 要求,重启后对 §1 探针 1–7 全量复测:
|
|
92
|
-
|
|
93
|
-
| # | 探针 | 重启前(§1) | 重启后复测 | 判定 |
|
|
94
|
-
|---|---|---|---|---|
|
|
95
|
-
| 1 | 引擎身份 | IPython 9.17.1 / ipykernel 7.3.0 / `ZMQInteractiveShell`;exe `.venv-kernel/bin/python`(3.11.15);uid 1000;cwd = agent 工作区 | **完全一致** | 稳定 ✅ |
|
|
96
|
-
| 2 | 跨 cell 状态 | `x = 42` 存活 | `restart_marker` 前置 cell 设 → 后置 cell 读到 | 会话内持久 ✅ |
|
|
97
|
-
| 2b | 跨重启状态(新增) | — | 重启前 `x` **不在**新内核 globals | 记录 → O-4 |
|
|
98
|
-
| 3 | 完成值回传 | 末表达式值回传、None 抑制 | 裸 `40 + 2` → 完成值 `42` | ✅ |
|
|
99
|
-
| 4 | 顶层 `return` | 包装侧 `_DashrTopLevelReturnChecker` 主动抛 | 同错同帧 | 稳定 ✅ |
|
|
100
|
-
| 5 | `%` 行 magic | `_dashr_ast.parse` 即 SyntaxError | 同错同处 | 稳定 ✅(C1 仍成立) |
|
|
101
|
-
| 6 | cell 内 `tool.*` | `tool.glob` → 4 文件 | → 6 文件(目录新增本报告 + v0.2.1f 报告) | ✅ 真实 fs |
|
|
102
|
-
| 7 | agent bash(workspace-write) | **拒**:no sandbox backend usable | **可用**:`pwd`→工作区;越界只读(dashr/docs、`/etc/hostname`)放行 | ✅ = §5.2 验收判据 |
|
|
103
|
-
|
|
104
|
-
- 探针 7 即 §5.2 的验收建议(4999 开 session 跑任意 bash)——**实测通过**:本次 daemon 经 `systemd-run --user` 启动于沙箱外(§5.2 修复),bwrap 探测不再嵌套失败;workspace-write 沙箱正常生效(只读越界放行、写仍限工作区)。
|
|
105
|
-
- §1-7 与 §3 首条(bash 拒)为**修复前**事实,与 §5.2 根因(嵌套沙箱)一致,已被探针 7 取代;O-1 转闭。
|
|
106
|
-
- 版本再漂移记录:§5.1 记 `0.2.1-e`;复测时 workspace package.json 已 **`0.2.1-f`**(v0.2.1f plugin-shipped-ui-patches 波落盘,dir 内已有同名报告)。本报告标题标签 v0.2.1e-P1 为 owner 指定(§5.3/5.4 已作 C 编号与波内处置)。
|
|
107
|
-
|
|
108
|
-
新增观察:
|
|
109
|
-
|
|
110
|
-
| # | 级 | 观察 |
|
|
111
|
-
|---|---|---|
|
|
112
|
-
| O-4 | 记录 | daemon 重启后内核为**全新命名空间**(重启前 `x` 不在)——「会话内持久」而非「跨重启持久」;若需跨重启续命须核 snapshot/restore(dill 快照)是否启用 |
|
|
113
|
-
|
|
114
|
-
### O-4 处置(2026-09-03 收口):dill 快照 = opt-in,未开非故障;4999 已开并跨重启实证
|
|
115
|
-
|
|
116
|
-
- **定性**:快照/恢复链(turn-end 落盘 + `agent/disposed` 落盘 + 插件卸载全量落盘;首次启动恢复;死亡→复活链)以 `snapshotDir` 配置为总开关(`z.string()` 无默认,文档明示 "none when absent")——4999 此前未配置,「重启后全新命名空间」是预期行为,不是 bug。
|
|
117
|
-
- **启用**:`.dsh-test/profiles/web/cordis.patch.yml` dashr-repl 行加 `snapshotDir: /home/u1/workspaces/dashr/.dsh-test/snapshots`。
|
|
118
|
-
- **实证**(CDP 聊天驱动,session `69b311b1`):turn 1 `x=42` → `state.dill` 落盘(manifest `names:["ToolCallError","tool","x"]`)→ **daemon 重启** → 同会话 `print(x)` → session 落盘含 `namespace restored from the turn-1 snapshot` 且结果 **42** → turn-2 快照落盘。跨重启续命成立。
|
|
119
|
-
- 发布层默认仍 opt-in(每用户 DSH_HOME 路径由部署方定),测试实例已开。
|
|
120
|
-
|
|
121
|
-
## §7 dill 快照/恢复 —— 第二独立实证(本会话 `8e966430`,2026-09-03)
|
|
122
|
-
|
|
123
|
-
补 owner O-4 处置的第二条独立证据链,覆盖** dill 特有对象类型 + per-principal 隔离**(owner 证为简单 `x=42` + 根因/启用):
|
|
124
|
-
|
|
125
|
-
| # | 步骤 | 证据 |
|
|
126
|
-
|---|---|---|
|
|
127
|
-
| 1 | dill 能力门 | venv `dill 0.4.1` 可 import;cell 内 roundtrip lambda/闭包/类实例全过(`fn(21)=42` / `closure()=10` / `obj.tag=dill-probe`) |
|
|
128
|
-
| 2 | 播种 | turn-1 设 `marker` / `plain` / `fn`(lambda) / `closure` / `obj`(类实例) / `Probe`(类) |
|
|
129
|
-
| 3 | turn-end 落盘 | `<snapshots>/session-8e966430/state.dill`(3816 B) + `manifest.json`(`snapshotFormat:1, turn:1, skipped:false`,names 全含) |
|
|
130
|
-
| 4 | 可回放预检(免重启) | 对真实 `state.dill` `dill.load` → 全对象恢复且可用 |
|
|
131
|
-
| 5 | daemon 重启 | user 重启(`systemd-run --user`) |
|
|
132
|
-
| 6 | restore-on-first-boot | 同会话新内核:`[dashr] namespace restored from the turn-2 snapshot` |
|
|
133
|
-
| 7 | 复活核验 | `marker` / `plain` / `fn(21)=42` / `closure()=10` / `obj.tag` / `Probe` 全在位;**`x` 正确缺位**(属另一会话 `69b311b1`,证明 per-principal 键控精确) |
|
|
134
|
-
| 8 | 恢复后再写 | turn-3 快照落盘(`sizeBytes:7512`),链续写正常 |
|
|
135
|
-
|
|
136
|
-
判定:dill 快照/恢复链**端到端闭环**——(a)dill 独有能力(lambda/闭包/类实例)在 dump→load→restore 全程无损;(b)per-principal 隔离精确(跨会话不串)。restore 依据「重启前最后一个好快照」(本会话为 turn-2 而非 turn-1),与 README「skipped 保留上一份好快照」语义一致。**O-4 正式关闭**(与 owner O-4 处置互为印证)。
|
|
@@ -1,73 +0,0 @@
|
|
|
1
|
-
# v0.2.1ef 开发审计报告 — ship-in-our-plugin 原则合规核查
|
|
2
|
-
|
|
3
|
-
> 2026-09-03 · 审计对象:change `2026-09-02-kernel-provisioning-completeness`(v0.2.1e)+ change `2026-09-03-plugin-shipped-ui-patches`(v0.2.1f)· 审计基准:upstream checkout `dsh-v0.1.2-alpha.5`(`db6bdc3576`)+ canonical `dashr/`(0.2.1-f)
|
|
4
|
-
|
|
5
|
-
## 0. 一句话结论
|
|
6
|
-
|
|
7
|
-
**✅ 合规** —— 两个 change 的全部代码与声明式 patch 都落在 `@pgmi-builds/better-dsh` 包内随 npm 发布;四条官方扩展面(bundle patch 行 / 公开事件 / `dsh.client` 声明 / CSS·slot 注入)各就各位;upstream checkout 除 AGENTS.md 早已存档的环境级 patch 外**零改动**。唯一待办是把 0.2.1f 部署上 prod,让手改 patch 退役从「机制可行」变成「事实发生」。
|
|
8
|
-
|
|
9
|
-
**审计原则(user 总裁决)**:不管是 UI change 还是所有 change,都必须 ship in our plugin,而不是需要去 patch 源码。
|
|
10
|
-
|
|
11
|
-
## 1. 审计方法
|
|
12
|
-
|
|
13
|
-
四个维度交叉验证:
|
|
14
|
-
|
|
15
|
-
1. 两份 design.md 的 Decision 逐条提取(D1–D6 / D1–D4);
|
|
16
|
-
2. canonical `dashr/src/` + `cordis.patch.yml` + `package.json` 实现落点核对;
|
|
17
|
-
3. upstream checkout `git status` / `git diff` 污染检查(区分环境 patch vs change patch);
|
|
18
|
-
4. 两份实测报告(`v0.2.1e-P1-实测报告.md`、`v0.2.1f-plugin-shipped-ui-patches实测报告.md`)的运行证据回填。
|
|
19
|
-
|
|
20
|
-
## 2. Change 1:kernel-provisioning-completeness(v0.2.1e)
|
|
21
|
-
|
|
22
|
-
| 设计要求 | 实现落点(均在插件包内) | 判定 |
|
|
23
|
-
|---|---|---|
|
|
24
|
-
| D2 三级触发 | ① `scripts/kernel-provision.mjs`(postinstall,在 npm `files` 发布清单);② `src/index.ts` apply 段 spin-up fire-and-forget `resolveKernelEnv`(不阻塞挂载、失败只 log);③ 首用 lazy 在 DashrRuntime(`kernelAutoInstall` 默认 true) | ✅ |
|
|
25
|
-
| D2/D6 fail-open | postinstall 任何失败 → 三条修复路提示 + `exit 0`,安装永不失败;零交互(无任何请求批准的路径) | ✅ |
|
|
26
|
-
| 插件领地边界 | `PACKAGE_ROOT = resolve(dirname(lib), '..')` → venv 落 `<包>/.venv-kernel`;实测(v0.2.1e 报告 §1-1)解释器在 `…/better-dsh/.venv-kernel/bin/python`(包内,CPython 3.11.15) | ✅ |
|
|
27
|
-
| D3 cache 邻位 | `UV_CACHE_DIR`/`UV_PYTHON_INSTALL_DIR` → `<venvDir>/../.uv-cache`(包内)+ `UV_LINK_MODE=copy`(`kernel-env.ts:133-138`);只读 HOME 无关 | ✅ |
|
|
28
|
-
| D4 版本锁 | `KERNEL_PYTHON_VERSION='3.11'` / `IPYKERNEL_VERSION='7.3.0'` / `DILL_VERSION='0.4.1'` 常量,pip/uv 命令带精确 pin | ✅ |
|
|
29
|
-
|
|
30
|
-
## 3. Change 2:plugin-shipped-ui-patches(v0.2.1f)
|
|
31
|
-
|
|
32
|
-
| 腿 | 设计机制 | 实现 | 判定 |
|
|
33
|
-
|---|---|---|---|
|
|
34
|
-
| P2 fence | bundle patch 行整行重述 `connection` | `dashr/cordis.patch.yml` 末行:`trustedHosts: !!js (process.env.DSH_TRUSTED_HOSTS ?? '').split(/\s+/).filter(Boolean).concat(ctx.webRuntime.trustedHosts)`;随包发布(`files` 含 patch.yml + `exports` 暴露 `./cordis.patch.yml`)。这是**官方声明式 patch 线**(上游注释明示的扩展式),不是改上游文件 | ✅ |
|
|
35
|
-
| P2 isLoopback | `webserver/index-inject` 公开事件注入 boot script | `src/web-trust.ts`:`ctx.inject(['webServer'])` 条件挂载 + `ctx.on('webserver/index-inject')` 监听(emit 时新鲜读 config);host webserver 包仅 type-only import;防覆盖守卫 + JSON 嵌入 authorities;空态完全惰性 | ✅ |
|
|
36
|
-
| P3 mobile | client 半 CSS + 增量手势 | `src/mobile/gesture.ts`(纯函数)+ `src/mobile/client/index.ts`:CSS `<style data-plugin>` 注入(模块系统 `claimStyles` 认领的一等公民路径)、`ctx.layout.toggleSidebar()` 官方服务、右栏走 Better Sidebar DOM toggle(`[data-dsh-toggle-cluster]`);配置经页面全局 `__DASHR_MOBILE__`(client 半无 loader config,页面全局即配置通道);client 半经 package.json `dsh.client` 声明注册(`inject` 含 `@deepseek-ai/dsh-client-ui-layout`) | ✅ |
|
|
37
|
-
| D4 手改 patch 退役 | alpha.3 vendored 手改(`isLoopbackHostname` 双侧改)被取代 | 机制面完全取代(fence = patch 行,isLoopback = boot script);**prod 退役待部署**(见 §6) | ✅ 机制 / ⏳ 部署 |
|
|
38
|
-
|
|
39
|
-
## 4. Upstream checkout 污染检查
|
|
40
|
-
|
|
41
|
-
`git status` 全部改动面(tag `dsh-v0.1.2-alpha.5`,detached `db6bdc3576`):
|
|
42
|
-
|
|
43
|
-
| 改动 | 定性 |
|
|
44
|
-
|---|---|
|
|
45
|
-
| `M package.json`(+`unrun` devDep) | 环境级:本机 Node 22.22.1 loader 链所需(AGENTS.md 已存档) |
|
|
46
|
-
| `M packages/client/tsdown.client.ts`(REPOSITORY_ROOT 探测) | 环境级 patch #1(AGENTS.md 已存档,缺此 build 即挂) |
|
|
47
|
-
| `M pnpm-workspace.yaml`(storeDir / verifyDepsBeforeRun / allowBuilds) | 环境级 patch #2(只读 store 重定向);`zeromq`/`@pgmi-builds/better-dsh` allowBuilds 条目是**包管理器构建脚本许可门**,非源码 patch,且设计显式容错(postinstall 被跳亦无妨,spin-up 是主路径) |
|
|
48
|
-
| `M pnpm-lock.yaml` | workspace install 正常产物 |
|
|
49
|
-
| `?? packages/better-dsh/` | 插件本体挂载位(workspace 成员),非 patch |
|
|
50
|
-
| `?? .graphifyignore` / `graphify-out/` | 无关图表工具产物 |
|
|
51
|
-
|
|
52
|
-
**两 change 在 upstream 侧的源码改动数 = 0。** canonical `dashr/` 与 monorepo 副本 src 树 + `cordis.patch.yml` 逐字节同步(diff 为空)。
|
|
53
|
-
|
|
54
|
-
## 5. 附带核查
|
|
55
|
-
|
|
56
|
-
- **hashline edit 升级透传修复**(v0.2.1f 附录,commit `e27fdec`):落在 `src/url-schema/vendored/hashline/`——插件**自带的 vendored 副本**,随插件发布,合规。prod(3080,npm 0.2.1-d)仍带此 bug,随下个发布版本收敛。
|
|
57
|
-
- **4999 profile 层配置**(`.dsh-test/profiles/web/cordis.patch.yml` 的 `trustedPageAuthorities` / `snapshotDir`):官方分层里的用户 config(operator 信任声明 / 快照开关),非源码侵入——分层语义本就允许用户层覆盖插件行。
|
|
58
|
-
|
|
59
|
-
## 6. 待办(非违规)
|
|
60
|
-
|
|
61
|
-
1. **prod 部署 0.2.1f**(v0.2.1f 报告 §6 遗留):按年龄门精确版本流程(`dsh plugin add @pgmi-builds/better-dsh@0.2.1-f`)+ `trustedPageAuthorities`/`DSH_TRUSTED_HOSTS` 配置 + 旧手改 patch 清单 retired。部署完成前,prod 仍在跑 0.2.1-d + 旧手改文件。
|
|
62
|
-
2. `ownsHost` off-label 风险 + connection 行形状漂移:已进 upstream-alignment S7 查表(两项)。
|
|
63
|
-
|
|
64
|
-
## 7. 结论
|
|
65
|
-
|
|
66
|
-
原则守住了:**所有 change 的代码与声明式 patch 都在 `@pgmi-builds/better-dsh` 包内随 npm 发布**——
|
|
67
|
-
|
|
68
|
-
- kernel 供给三级(postinstall / spin-up / lazy)全在插件领地,venv + uv-cache 落包内;
|
|
69
|
-
- P2 双腿 = bundle patch 行(fence)+ 公开事件 boot script(isLoopback);
|
|
70
|
-
- P3 = client 半官方注册(CSS 注入 + 增量手势);
|
|
71
|
-
- upstream checkout 除既有环境 patch 外零改动。
|
|
72
|
-
|
|
73
|
-
alpha.3 时代「升级即丢」的手改源码模式已在机制层面终结;剩余动作仅为一次版本化部署。
|
|
@@ -1,102 +0,0 @@
|
|
|
1
|
-
# v0.2.1f 实测报告 — plugin-shipped-ui-patches(web-trust-fence + mobile-layout)
|
|
2
|
-
|
|
3
|
-
> 2026-09-03 · change `2026-09-03-plugin-shipped-ui-patches` · 4999 源码级实例(`dsh-v0.1.2-alpha.5` + better-dsh 0.2.1-f)
|
|
4
|
-
|
|
5
|
-
## 0. 一句话结论
|
|
6
|
-
|
|
7
|
-
两个原"user 私人手改 patch"以插件随发形态落地:**P2 = bundle patch 行覆盖(fence 腿)+ webserver/index-inject boot script(isLoopback 腿);P3 = client 半 mobile 模块(CSS + 三条件手势)**。全部机检绿(423/423 + tsc 0),4999 双腿实证通过;浏览器/真机两级确认留给 user。
|
|
8
|
-
|
|
9
|
-
## 1. 实测范围与结果
|
|
10
|
-
|
|
11
|
-
| # | 项 | 结果 |
|
|
12
|
-
|---|---|---|
|
|
13
|
-
| T1 | vitest 全量(403 基线 + web-trust 8 + mobile-gesture 12) | ✅ **423/423** |
|
|
14
|
-
| T2 | tsc --noEmit | ✅ 0 错 |
|
|
15
|
-
| T3 | `!!js` 表达式:真实 js-yaml 方言解析 + loader 语义 evaluate | ✅ env 合并 `["a.example","b.example","192.168.31.130","lan"]`;空 env = 原生等价 |
|
|
16
|
-
| T4 | dump-config 合成 | ✅ connection 行标注 `# == @deepseek-ai/dsh-web-app, patched by @pgmi-builds/better-dsh`(层序 + 出处) |
|
|
17
|
-
| T5 | **fence 腿活体**(daemon 带 `DSH_TRUSTED_HOSTS=probe.example`) | ✅ `Host: probe.example` → **401**(过栅栏、卡认证 = 过关签名);`Host: evil.example` → **403** |
|
|
18
|
-
| T6 | **isLoopback 腿活体**(boot script 注入) | ✅ shell HTML 含 `(function(){try{if(!window.__DSH_TRANSPORT__){var h=location.hostname,a=["probe.example","192.168.31.130"];…` —— 防覆盖守卫 + JSON 嵌入 authorities 全在场 |
|
|
19
|
-
| T7 | **mobile 全局** | ✅ 同页 `__DASHR_MOBILE__={"enabled":true,"breakpoint":1024,"swipeDistancePx":48,"swipeVelocityPxPerMs":0.35,"edgeBandPx":28}` |
|
|
20
|
-
| T8 | **client bundle mobile 模块** | ✅ application batch(3.7MB)含 `data-sidebar-collapsed`×2 / `__DASHR_MOBILE__`×2 / `toggleSidebar`×10 |
|
|
21
|
-
| T9 | boot graph | ✅ `@pgmi-builds/better-dsh` 行在场(沿 v0.2.1e 既验路径) |
|
|
22
|
-
|
|
23
|
-
## 2. 实现面(代码清单)
|
|
24
|
-
|
|
25
|
-
- `dashr/cordis.patch.yml`:+`connection` 行覆盖(整行重述 + `trustedHosts: !!js (env).split(/\s+/).filter(Boolean).concat(ctx.webRuntime.trustedHosts)`;⚠ `!!js` 是 scalar tag,表达式不能以 `[` 开头——flow-seq 会被 yaml 拒)。
|
|
26
|
-
- `dashr/src/web-trust.ts`(新,host 半):`buildBootScript` 纯函数 + `installWebTrust`(`webserver/index-inject` 监听,emit 时新鲜读 config)。一个内联 head script 双效:trusted hostname → `window.__DSH_TRANSPORT__={ownsHost:true}`(无 fetch/openStream,唯一效应 = isLoopback 翻真;不覆盖已有 transport);mobile 阈值 → `window.__DASHR_MOBILE__`。
|
|
27
|
-
- `dashr/src/mobile/gesture.ts`(新,纯):`isRecognizedSwipe`(起点∧距离∧速率 + 横向占优 + touch/pen only)、`isInteractiveOrigin`、`isNarrowViewport`、`resolveMobileConfig`。
|
|
28
|
-
- `dashr/src/mobile/client/index.ts`(新,client 半):`setupMobileLayout`——`<style data-plugin data-plugin-css>` 注入(媒体查询 + `[data-sidebar-collapsed]` + `!important` 覆盖内联 grid template → 侧栏轨 0)+ document 级 pointer 监听 → `ctx.layout.toggleSidebar()`(窄视口=翻 narrowExpanded)。
|
|
29
|
-
- `dashr/src/index.ts`:Config + `trustedPageAuthorities` / `mobile`(schema 默认 enabled);apply 挂 `installWebTrust`。
|
|
30
|
-
- `dashr/src/failover/client/index.ts`:client 入口挂 `setupMobileLayout`;package.json `dsh.client.inject` + `@deepseek-ai/dsh-client-ui-layout`(模块表边)。
|
|
31
|
-
- tsconfig exclude + `src/mobile/client`(沿 failover/client 的 client 半约定)。
|
|
32
|
-
|
|
33
|
-
## 3. 病因与定性回执(P2 复诊闭环)
|
|
34
|
-
|
|
35
|
-
- prod 消息 `…failed: settings are unavailable in this browser` = 浏览器侧 `isLoopback` 门(`ui-settings` memory 持久化终态不可用),非服务端 fence。
|
|
36
|
-
- 上游定性(设计笔记实证):有意 = "非 loopback 关 Host 持久化(偏好进程本地、页面照常)";无人设计 = mirror 把 memory 做成终态不可用 + trustedHosts 未传导到 host facts——当年源码 patch 存在的全部理由。
|
|
37
|
-
- B 机制恢复的正是设计意图形态(remote 页面照常 + Host 持久化)。
|
|
38
|
-
|
|
39
|
-
## 4. 验证环境事实
|
|
40
|
-
|
|
41
|
-
- 4999:systemd-run `dsh-4999-test`,`DSH_TRUSTED_HOSTS=probe.example`;profile patch 覆盖 `dashr-repl` 行 `trustedPageAuthorities: ['probe.example','192.168.31.130']`(+ 重述 python 表达式)。
|
|
42
|
-
- monorepo 副本重建:`pnpm --filter @pgmi-builds/better-dsh exec tsdown` + `pnpm exec tsx scripts/build-client.ts`(34ms)。
|
|
43
|
-
- 旋钮惰性双态:无 env / 无 authorities 时 fence 与 boot script 均与原生一致(T3 + `buildBootScript` 空态 undefined 单测)。
|
|
44
|
-
|
|
45
|
-
## 5. 待 user 确认(browser/真机级)
|
|
46
|
-
|
|
47
|
-
- [ ] 手机经 `http://192.168.31.130:4999`(或 prod 域名):Settings > Models 清单加载、settings 编辑持久化生效(isLoopback 腿端到端)。
|
|
48
|
-
- [ ] 手机窄视口:侧栏隐藏(轨 0)、快速轻扫开/关 overlay、慢速拖选文本不触发(三条件手势端到端)。
|
|
49
|
-
- [ ] 桌面 ≥1024 视口不受影响;平板窄档(920–1023,details 开)表现复核。
|
|
50
|
-
|
|
51
|
-
## 6. 遗留
|
|
52
|
-
|
|
53
|
-
- prod 部署升级(alpha.5+ + 0.2.1-f + `trustedPageAuthorities`/`DSH_TRUSTED_HOSTS` 配置 + retired 手改 patch 清单)——按年龄门精确版本流程另走。
|
|
54
|
-
- `ownsHost` off-label 风险与 connection 行形状漂移:进 upstream-alignment S7 查表(已加两项)。
|
|
55
|
-
|
|
56
|
-
## 7. Round 2(2026-09-03 user 实测反馈闭环)
|
|
57
|
-
|
|
58
|
-
- **阈值**:速率默认 0.35 → **0.2 px/ms**("要求太快"裁定)。
|
|
59
|
-
- **左滑关闭从不触发的根因**:不是速度——首版 origin 条件只认屏幕边缘带,而关闭手势的手指落在展开的侧栏本体上,全被拒。round 2 改为面板状态感知分类器 `classifySwipe`(展开态任意起点左滑即关)。
|
|
60
|
-
- **新增右栏手势**:右缘带左滑 `openDetails`、非左缘右滑 `closeDetails`(面板状态读 AppFrame 语义属性)。
|
|
61
|
-
- **4999 手机通道**:`--host 0.0.0.0` 被启动器故意拒绝("would expose remote code execution"——上游安全立场,与 prod 的 Caddy 反代拓扑呼应);改设 socat 测试反代 `dsh-4999-lan`(0.0.0.0:4990 → 127.0.0.1:4999),手机经 `http://192.168.31.130:4990/?token=…` 直测,fence(port-less 192.168.31.130 ∈ DSH_TRUSTED_HOSTS)与 isLoopback(∈ trustedPageAuthorities)双腿在此路径生效(LAN 直连 401=fence 过 + shell/boot script/RPC 200 已验)。
|
|
62
|
-
- **Models 页复诊**:三条 RPC(llm/listProviders、llm/listConfigurableProviders、settings/describe)loopback 直连全 ok——4999 后端无恙;user 手机所见的 Models 失败实为 prod(v0.2.1f 未部署)。
|
|
63
|
-
- **dsh-better-sidebar**:0.17.1 与 alpha.5 不兼容(import 的 `settingsNamespace` 已被上游 settings 面重设计移除);装 **0.18.0-alpha.0** 通过(boot graph 已含其 client.js);profile pnpm-workspace allowBuilds 补 `node-pty: true` 并 rebuild。
|
|
64
|
-
|
|
65
|
-
## 8. Round 3(2026-09-03 前端机制实证 + sidecarx 对齐)
|
|
66
|
-
|
|
67
|
-
- **机制链真浏览器实证**(CDP 驱动 google-chrome headless,经手机同款拼写 `192.168.31.130:4990`):`window.__DSH_TRANSPORT__ = {"ownsHost":true}` 翻真;Settings > Models 页渲染出目录("Enter your API keys… DeepSeek / Edit / Add a custom provider");截图 `.scratch/models-page-proof.png`。脚本位次(HTML 实测):queue script(100) → … → `__DSH_BOOT__`(3637) → **boot script(23778)** → shell 主入口(25168)——先于一切 application bundle 物化。
|
|
68
|
-
- **sidecarx 对齐**(user 参照 `sidecarx/src/webclient/src`):参照实现**无速率门槛**(`app.js:332` `SWIPE_THRESHOLD=50` + 左缘带 40px + 展开态任意起点左滑关 + `absDY>absDX` 拒绝;overlay-viewer 同款数学)——默认改为 sidecarx 同款:distance 50 / edgeBand 40 / **velocity 0(禁用)**;三条件模式保留为配置旋钮(armed 时生效,慢速拖选 ~0.13 px/ms 为标定参考)。429/429 绿。
|
|
69
|
-
- 前端机制一句话:**变量是前端运行时的(`window.__DSH_TRANSPORT__`,connection 浏览器半 apply 时读取),载体是服务端渲染的页面 HTML**(host 插件经公共事件 `webserver/index-inject` 注入的内联 head script)——这是插件触达 bundle 加载前时序的唯一途径。
|
|
70
|
-
|
|
71
|
-
## Round 4(2026-09-03)— 手势整体重写:z_dsh-alpha `1706b81` 逐条照搬 + 速率门
|
|
72
|
-
|
|
73
|
-
**触发**:user 指出 round-2 报告的 48/28/0.2 三元组无任何源码出处(系发明值),要求以旧 ui-layout 补丁(退役目录 `z_dsh-alpha`,commit `1706b81` "ui-layout: mobile swipe opens Better Sidebar right panel via its DOM toggle")为 **exact** 基线,唯一增量 = 速率门控。
|
|
74
|
-
|
|
75
|
-
**根因链(本轮三个症状全部落地)**:
|
|
76
|
-
1. "必须贴着左边缘" — round-2/3 缘带 28/40px;源码是 **X120**(`e.clientX > 120` 才拒绝),右侧起点区为**右 3/4 屏**(`x < viewport/4` 才惰性)。
|
|
77
|
-
2. "还是要划很快" — 部署物里速率确实是 0(boot script 实证);真因是 round-3 在 **pointerup** 才判定,慢划先被浏览器滚动启发式 pointercancel 吃掉。源码在 **pointermove 中途**(|dx|≥40 ∧ |dx|>|dy|×1.3 达成即触发,一次性)。
|
|
78
|
-
3. "右侧栏怎么划都出不来" — round-3 调的是上游 details 面板(`ctx.layout.openDetails()`);用户的右栏是 **Better Sidebar 浮层**,源码经 `[data-dsh-toggle-cluster]` 末按钮 DOM click 切换。上游 details 在窄视口被强制关闭,永远不可见。
|
|
79
|
-
|
|
80
|
-
**落地**(commit `0676811`):`gesture.ts`/`mobile/client/index.ts` 全重写为源码语义;断点 <768(SIDEBAR_MOBILE);唯一增量速率门默认 0.15 px/ms(慢速文本拖拽 ~0.13 被滤,舒适滑扫 ≥0.4 通过;0=关闭)。`test.pc.randomhash.app` 加入 `trustedPageAuthorities`(Caddy 反代该域 → 127.0.0.1:4999,Host 被改写为 loopback 过 fence,但页面 origin 是该域名——此前不在信任列表,isLoopback=false → Models 挂)。
|
|
81
|
-
|
|
82
|
-
**实证**(CDP 真浏览器,用户真实 URL `https://test.pc.randomhash.app`):
|
|
83
|
-
- 手机模拟 390×844 触摸序列:开左栏 ✓ / 关左栏 ✓ / 开右栏(Better Sidebar)✓ / 关右栏 ✓;`__DSH_TRANSPORT={ownsHost:true}`、`__DASHR_MOBILE` 七键全对。
|
|
84
|
-
- 桌面视口:Settings → Models 渲染 provider 列表(DeepSeek / Edit / Add provider)✓。
|
|
85
|
-
- 服务端:boot script 含新阈值与 `test.pc.randomhash.app`;client bundle rev `e9e06225516c` 含全部新标记。
|
|
86
|
-
- 单测 425/425,tsc 0。远程(Hermes/OMP a2a)独立浏览器验证已派出。
|
|
87
|
-
|
|
88
|
-
**遗留**:真机(手机/MacBook)复测;远程 agent 回报收取。
|
|
89
|
-
|
|
90
|
-
## Round 4 收口(2026-09-03)— 真机确认
|
|
91
|
-
|
|
92
|
-
user 于 round-4 部署后在手机/MacBook 经 `https://test.pc.randomhash.app` 复测,回复 **"UI ok"**——Models 页 + 移动手势(X120 左缘带 / 右 ¾ 起点区 / move 触发 / Better Sidebar 右栏 DOM toggle / 速率门 0.15)真机验收通过。round-4 遗留仅剩远程 agent(Hermes/OMP)独立回报收取(a2a 已派出)。
|
|
93
|
-
|
|
94
|
-
## 附:hashline edit 升级透传 bug(2026-09-03,commit `e27fdec`)
|
|
95
|
-
|
|
96
|
-
**症状**(user 报告):4999 会话内 agent 带齐 `sandbox_permissions:"danger-full-access"` + `justification` 重试 edit,审批卡永不弹,循环收 `[sandbox: file access denied under workspace-write mode]` + escalation-available 提示。
|
|
97
|
-
|
|
98
|
-
**证据**(session `8e966430`,zstd session log):8 次升级 edit 全部 plain 拒绝,全程 `approval/asked` 事件数 = 0;同 session 的 `write` 升级正常弹卡并被 `allowed-once`。上游 `approveEscalation` 是 fail-closed 设计——升级参数若真触达,要么弹卡要么抛专用错误文本,绝不会返回 plain 拒绝+提示。
|
|
99
|
-
|
|
100
|
-
**根因**:better-dsh vendored hashline `tool-edit.js` 在 `sandbox.resolvePolicy("edit", {path, edits}, exec)` 调用点手工重构对象,丢弃了 `sandbox_permissions`/`justification`(讽刺的是 `canonical` 里就带着——`contract.normalizeRequest` 显式回填)。`resolvePolicy` 见不到字段 → 永远返回 standing policy → 围栏拒绝。`batch_edit`/`undo_last_edit` 传 `canonical`,无此问题;`write`/`bash` 走上游 tool-fs/tool-bash 传全参,无此问题。
|
|
101
|
-
|
|
102
|
-
**修复**:调用点透传两字段;回归测试 `test/url-schema/escalation-forward.spec.ts`(stub sandbox 捕获 resolvePolicy 入参 + 预中止 signal 隔离 fs 半边)2 例;427/427 + tsc 0;已部署 4999。**注意 prod(3080,npm 0.2.1-d)同样带此 bug**,随下个发布版本收敛。
|
|
@@ -1,73 +0,0 @@
|
|
|
1
|
-
# v0.2.3b hashline-content-locator 实测报告
|
|
2
|
-
|
|
3
|
-
> 2026-09-08 · 环境:DSH 4999 dev 线(upstream checkout `0.1.3-alpha.2-82a5fd6-dirty`,
|
|
4
|
-
> `DSH_HOME=~/.workspaces/dashr/.dsh-test` 语义路径 `.dsh-test`),better-dsh vendored
|
|
5
|
-
> hashline 桥(change `2026-09-08-v0-2-3b-hashline-content-locator`)。
|
|
6
|
-
> 前置:诊断报告 `2026-09-08-hashline-edit-E_RANGE_UNVERIFIED跨轮会话键失效-诊断报告.md` §7。
|
|
7
|
-
|
|
8
|
-
## 0. 一句话结论
|
|
9
|
-
|
|
10
|
-
五项裁决全部落地并实测通过:served 账本去 session 化(schema v7,path 主键)、集中存储
|
|
11
|
-
`$DSH_HOME/storages/dsh-better-edit/`、verifyServedRange 内容快道、write 回放移除、失败文案
|
|
12
|
-
修正。单测 12/12 新增全绿、全量 491 过 2 挂(挂项为先于本改动存在的上游类型漂移,stash 基线
|
|
13
|
-
复跑证实);4999 真实 agent session 第一人称实测:write 只回确认信封(无锚点回放)、read 记账
|
|
14
|
-
进中心库(served 表 `path,hashes,reported,updated_at`,无 session_id 列)、跨会话 edit 链路
|
|
15
|
-
走通、全程无任何 `.dsh_better_edit` 点目录。
|
|
16
|
-
|
|
17
|
-
## 1. 单元层(canonical,`npx vitest --run`)
|
|
18
|
-
|
|
19
|
-
- 新增 `test/hashline-store.spec.ts` **12/12 绿**:v7 中心库落位与无点目录断言、path 主键
|
|
20
|
-
upsert 合并、跨"会话"上下文免 read 取行(fork 模拟)、drift 标记随 path、v6→v7 迁移重建
|
|
21
|
-
( handmade 旧库打开后 `session_id` 列消失、version=7)、TTL prune、verifyServedRange 六态
|
|
22
|
-
矩阵(账本未见→内容快道通过;账本全知匹配→过;内部漂移→`E_RANGE_STALE`;账本洞→
|
|
23
|
-
`E_RANGE_UNSERVED`;单边账本→`E_RANGE_UNVERIFIED`;拒绝文案含"Read the file once…
|
|
24
|
-
resubmit the whole batch")。
|
|
25
|
-
- 全量:**491 passed / 2 failed**,2 挂项(`handlers/agent.ts` `snapshotEvents`、
|
|
26
|
-
`SessionHeader.isSeeded`)经 `git stash` 基线复跑**证实先于本改动存在**(上游 alpha.2 对齐
|
|
27
|
-
类型漂移,非本 change 引入;tsc 同样仅此 3 条既有错)。
|
|
28
|
-
|
|
29
|
-
## 2. 构建(monorepo 副本)
|
|
30
|
-
|
|
31
|
-
- rsync(AGENTS exclude 表)→ `pnpm --filter better-dsh exec tsdown` → **9 files 529.98 kB**,
|
|
32
|
-
`lib/index.js` 形态正确 → `tsx scripts/build-client.ts` → `lib/client/index.js`
|
|
33
|
-
17.82 kB(md5 `a88850ec056aae943934adfdeb79347e`,client 半零改动)。
|
|
34
|
-
- **教训(新增坑,已亲历)**:直接以 `node_modules/.bin/tsdown` 裸跑(不经 pnpm workspace env)
|
|
35
|
-
会产出 `.mjs` 形态(7 files),boot 即 `ERR_MODULE_NOT_FOUND lib/index.js`——**必须用
|
|
36
|
-
`pnpm --filter better-dsh exec tsdown`**;且 `--delete` rsync + tsdown clean 会连带重置副本
|
|
37
|
-
配置与 lib(本次已重建,副本 package.json/tsdown.config 现与 canonical 一致)。
|
|
38
|
-
|
|
39
|
-
## 3. 4999 第一人称实测(真实 agent session,CDP 驱动 GUI)
|
|
40
|
-
|
|
41
|
-
工作区 `/home/u1`(GUI 工作区选择器未绑到 ws-probe,落在默认 home 桶——不影响断言),
|
|
42
|
-
模型 DeepSeek-V4-Flash。三段剧本:
|
|
43
|
-
|
|
44
|
-
| 步 | 动作 | 断言 | 结果 |
|
|
45
|
-
|---|---|---|---|
|
|
46
|
-
| S1 | write 创建 `probe-v023b.md`(6 行规格内容) | write 结果**无** `--- Auto-read (hashline anchors) ---` 段,仅确认信封 | ✅(transcript 仅 "Produced probe-v023b.md") |
|
|
47
|
-
| S1 | read 全文 | 锚点记账进**中心库** | ✅ `.dsh-test/storages/dsh-better-edit/hash-store.sqlite`(+WAL)出现;served 表列 `path,hashes,reported,updated_at`,**无 session_id**;单行 `path=/home/u1/probe-v023b.md → ["Udx","nyO","zlr","DBc","Zuy","GTH"]` |
|
|
48
|
-
| S2(**新会话**,不同 session id,从未观察/读过该文件) | 直接 edit(锚点 zlr/zlr 来自 S1) | 旧代码此处必 `E_RANGE_UNVERIFIED` | ⚠️ 见 §4——被**宿主层另一道闸**前置拦截 |
|
|
49
|
-
| S2 | read 一次后同参数 edit | 成功落盘 | ✅ 文件第 3 行 = `beta line EDITED-BY-v0.2.3b-PROBE`;无任何 E_RANGE_* |
|
|
50
|
-
|
|
51
|
-
存储探针:`/home/u1/.dsh_better_edit` **不存在** ✓(home 即 workspace,dot-dir 若仍会创建必然在此)。
|
|
52
|
-
|
|
53
|
-
## 4. 实测发现:宿主 fs 观察策略是跨会话 edit 的另一道(设计内)闸
|
|
54
|
-
|
|
55
|
-
S2 盲 edit 返回 `[E_NOT_OBSERVED] The file has not been observed in this session
|
|
56
|
-
(read-before-write policy). Call read() first` ——这是 **`dsh-fs-observation-policy` 宿主插件**
|
|
57
|
-
的 observed-state 守卫(owner=agent 会话的 WeakMap,read/write/edit 记版本),**不是** hashline
|
|
58
|
-
served 账本。定性:
|
|
59
|
-
|
|
60
|
-
- **保留**(user 裁决语义:"安全守卫在确认覆盖/见过"——read-before-edit 正是宿主层的"见过");
|
|
61
|
-
本 change 的范围是把 hashline 层的**重复**session 账本拿掉,不是拆宿主守卫。
|
|
62
|
-
- 事故剧本(S1 write → fork 子会话 edit)在原线上之所以先报 hashline 错,是 fork 继承了观察态;
|
|
63
|
-
hashline 层修复后,**同进程 fork 续聊**的 edit 将直接由内容快道放行(fork 不再需要冗余 read)。
|
|
64
|
-
- 全新无关会话(如本 S2)盲 edit 被宿主拦——符合"读过才许改"的常理,非回归。
|
|
65
|
-
|
|
66
|
-
## 5. 残留与移交
|
|
67
|
-
|
|
68
|
-
- 预置 guidance 覆盖目录现种子于 `storages/dsh-better-edit/`(ensurePresetGuidance 同目录)——
|
|
69
|
-
与 store 同居一处,属可接受的组织形态。
|
|
70
|
-
- 旧 12 个 `<workspace>/.dsh_better_edit/` 弃置未删(TTL 语义自然清空;物理清理留 user 决定)。
|
|
71
|
-
- 4999 实例已停本探针产物:`/home/u1/probe-v023b.md` 与 `.scratch/ws-probe/` 已清理。
|
|
72
|
-
- **发布闸状态**:a 第一人称实测 ✅ → b 本报告 ✅ → **c user 明确确认放行 ⏳**(单次有效;
|
|
73
|
-
未 commit、未 tag、未 publish)。
|
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
# v0.2.3-c mobile wave 实测报告
|
|
2
|
-
|
|
3
|
-
- 日期:2026-09-11
|
|
4
|
-
- 范围:`better-dsh@0.2.3-c`(npm)/ tag `v0.2.3c`
|
|
5
|
-
- 验证环境:Dev/Test 1 源码线 4988 实例(upstream `dsh-v0.1.5-rc.2`,`DSH_HOME=~/.dsh-test`,LAN=1 socat 中继),user iPhone 真机第一人称实测
|
|
6
|
-
- 关联:`upstream-dsh-0.1.5-rc.2-local-test-report.md`(对齐轮全链路)、AGENTS.md §二 mobile wave 条目、§四红线
|
|
7
|
-
|
|
8
|
-
## 一、变更清单
|
|
9
|
-
|
|
10
|
-
1. **手势状态输入只认官方面**(红线落地;起因:旧实现读第三方 Better Sidebar 的 `body[data-dsh-sidebar-collapsed]`,插件移除后属性恒缺 → `readRightOpen` 永真 → 状态机整体毒死):
|
|
11
|
-
- 左栏:动作 `ctx.layout.toggleSidebar()`;状态读 AppFrame `[data-sidebar-collapsed]`。
|
|
12
|
-
- 右栏(0.1.5 ui-sidebar-right):开 = 官方控件 `[data-sidebar-right-expand]`(会话头角落),关 = `[data-sidebar-right-toggle]`(dock chrome);状态读双 facet:`fullscreen = [data-rightbar-fullscreen] 在场`,`trackless = [data-rightbar-collapsed] 在场`,`readRightOpen = fullscreen || !trackless`。
|
|
13
|
-
2. **响应式零自设像素阈值**:CSS 规则键纯 `[data-sidebar-collapsed]`(无 @media),上游 auto-collapse 收 rail(今日 56px)时我们压成 0px,上游改阈值自动跟随;手势激活 band = 粗指针(`pointer: coarse`)∨ 任一面板窄态,细指针全静息。
|
|
14
|
-
3. **`mobile.breakpoint` 配置删除**(schema + boot payload + client 三处);zoomGuard 内部 768 兜底不动。所谓"mobile 配置卡"从未存在(client 半唯一设置行是 failover)。
|
|
15
|
-
4. **0.1.5-rc.2 对齐移植**(随批发布):persistence seam `inspect`→`stat`+`open(id,'read')`+`handle.read()`(`src/url-schema/handlers/agent.ts` `persistedEventsOf`);`subagents.sendMessage` 统一 seam(下行 child / 上行 `parentSession`,`src/bridges/index.ts`、`src/subagents-surface.ts`);session 事件名 `tool/code-dispatch(-start)` → `tool/ptc-dispatch(-start)`(`src/index.ts`,载波 `tools/ptc-dispatch-log` 名不变)。
|
|
16
|
-
5. **船货卫生**(本次新增 `dashr/scripts/copy-docs.mjs` 替换裸 `cpSync` prebuild):发布 docs 副本排除 `60_exploration-and-research/`(gitignore 明文 never publish)、`superd/`、`dsh-sys-prompt_*.md`、`*_artifacts/`(2.8MB 探针产物),并对副本内 .md 做 `token=<20+字面量>` 脱敏。**事实记录(2026-09-11 全版本扫描)**:泄漏机制 = prebuild `cpSync('../docs','docs')` 把仓库根 docs 全量拷进包内再随 `files:["docs"]` 打包(docs:// URL schema 的运行时供给面,v0.1.8d 起存在);包内镜像 `dashr/docs/` 被 `dashr/.gitignore` 的 `/docs/` 忽略 → git 永远看不见,2026-09-03 "never publish" 裁决只落了 git 轴,npm 轴漏网。受影响版本(registry 不可撤):0.2.2-a(6 文件) / 0.2.2-b(8) / 0.2.2-c(33) / 0.2.3 游离(6) / 0.2.3-b(48 + superd 4)。**内容定级复核:全部 `token=` 命中均为占位符(`token=…` / `token=«redacted»`),真实 token 字面量从未上过 registry**——泄漏内容 = 研究笔记 + superd 蓝图 + 测试报告,无凭据类材料。0.2.3-c tarball 70 文件 / 757KB,敏感扫描零命中。
|
|
17
|
-
|
|
18
|
-
## 二、第一人称验收(user 真机,2026-09-11)
|
|
19
|
-
|
|
20
|
-
1. 初版手势(读第三方 body 属性):左滑右滑全灭——user 报障并裁决"左栏是官方的,必须永远工作;状态输入只许寻址官方面"。
|
|
21
|
-
2. 官方面重写版:左滑开右面板成功;右滑误开左栏——user 亲自诊断"手机上右栏全屏不占轨道,`data-rightbar-collapsed` 在场而面板盖满 → readRightOpen 误判 false"。修为双 facet 读法后 user 确认:**"没有问题,是成功的"**。
|
|
22
|
-
3. 4988 活体证据:boot graph 含 `"id":"better-dsh"`;served client.js 官方选择器 4 处(`data-sidebar-collapsed` / `data-sidebar-right-expand` / `data-sidebar-right-toggle` / 双 facet 读法)、第三方死引用 0。
|
|
23
|
-
|
|
24
|
-
## 三、构建与套件
|
|
25
|
-
|
|
26
|
-
- 发布产物在 monorepo(0.1.5-rc.2 workspace 手术环境)构建:tsdown 9 文件 530KB + client 18.57KB;canonical 与副本 src/cordis.patch.yml/build-client.ts 逐字节一致(diff rc=0)。
|
|
27
|
-
- 套件:monorepo 环境 492/492 通过 + tsc 0(对齐轮已录)。canonical 本地套件 14 挂 + src 5 类型错——**环境错位非产物缺陷**:canonical node_modules 的 `@deepseek-ai/*` peers 停在 0.1.2-alpha.3(registry fallback),而 src/test 已按 0.1.5 API 移植;canonical package.json 按教义保持 npm-range peers 不动(发布语义),手术只在副本。canonical dev 环境刷新另行处理,不阻塞本发布(同源同产物已由 4988 全链路验证)。
|
|
28
|
-
|
|
29
|
-
## 四、0.1.3-alpha.2(当前 prod host)兼容矩阵(2026-09-11 源码核验)
|
|
30
|
-
|
|
31
|
-
| seam | 0.1.3-alpha.2 | 结论 |
|
|
32
|
-
|---|---|---|
|
|
33
|
-
| `sessionPersistence.stat` / `open(id,'read')` / `handle.read()` | handle 模型已在(types/index.d.ts + handle.d.ts 实证) | 兼容 |
|
|
34
|
-
| `subagents.sendMessage` / `startContinuable` | 二者均在 lib/index.js 导出实证 | 兼容 |
|
|
35
|
-
| 载波 `tools/ptc-dispatch-log` | spill-policy/tools/scope/tool-cordis 均引用 | 兼容 |
|
|
36
|
-
| session 事件 `tool/ptc-dispatch(-start)` | 不在旧 catalog(旧名 code-dispatch),但 `adoptSessionEvent` 与 seed envelope 校验只查 envelope 不查目录(vocabulary-growth 容忍设计,`ignorable` 键合法) | **降级不破坏**:事件安全落盘,旧 host UI 不渲染 dispatch 卡片;host 升 0.1.5 后自愈 |
|
|
37
|
-
| mobile wave(CSS/手势/boot payload) | 纯 client 面,host 无关 | 兼容 |
|
|
38
|
-
|
|
39
|
-
结论:0.2.3-c 在 0.1.3-alpha.2 prod host 可安全安装运行,repl-dispatch 卡片渲染待 host 升级后恢复。
|
|
40
|
-
|
|
41
|
-
## 五、发布操作记录
|
|
42
|
-
|
|
43
|
-
- canonical `package.json`:version `0.2.3-c`;prebuild → `node scripts/copy-docs.mjs`。
|
|
44
|
-
- lib/ 构建:monorepo `pnpm --filter better-dsh exec tsdown` + `tsx scripts/build-client.ts`(三级 ../..),拷回 canonical。
|
|
45
|
-
- `npm pack --dry-run`:70 文件 / 757KB,`60_exploration|superd|_artifacts` 零命中,token 零命中。
|
|
46
|
-
- GitHub:commit + tag `v0.2.3c` → push origin main;npm:publish → `npm view` 复核(实际时间戳以操作为准)。
|
|
47
|
-
- prod 3080 部署:**未执行**(user 未指令;user 以普通用户身份自装实测,per 2026-09-03 裁决先例)。
|