Skip to content

🏗️ arch(web): place search tools in spark-tool-web and spark-web as the app - #482

Open
zrr1999 wants to merge 1 commit into
zendev-lab:mainfrom
zrr1999:feat/spark-tool-web-app
Open

🏗️ arch(web): place search tools in spark-tool-web and spark-web as the app#482
zrr1999 wants to merge 1 commit into
zendev-lab:mainfrom
zrr1999:feat/spark-tool-web-app

Conversation

@zrr1999

@zrr1999 zrr1999 commented Aug 19, 2026

Copy link
Copy Markdown
Collaborator

动机

spark-tool-<family> 是无状态工具族的库存命名;web_search / fetch_content 不拥有 Spark 进程。spark web 才是进程:启动 DSH web profile、写入管理插件、并作为 dispatcher 平面。把 DSH 客户端留在 packages/ 会让它看起来像 capability,而真正进程仍然在 spark-cli 里 in-process 启动。

解决方案

  • 搜索/抓取能力从 @zendev-lab/spark-web 重命名为 @zendev-lab/spark-tool-webpackages/spark-tool-web)。
  • @zendev-lab/spark-web 成为 apps/spark-web 应用:吸收原 spark-web-dsh 客户端插件与 CLI 的 DSH boot,提供 spark-web companion。
  • spark web 通过 dispatcher spawn companion(与 spark hub / spark tui 相同),不再在 CLI 进程内 import boot 路径。
  • 包预算仍闭合在 44:这是 rename + capability→application 重分类,不是新 workspace。

说明

  • 持久化 responseId 前缀仍为 spark-web:;存储路径仍为 .spark/web/content.json
  • 持久化 extension specifier @zendev-lab/spark-web/extension 会 rewrite 到 @zendev-lab/spark-tool-web/extension
  • DSH overlay id 仍为 spark-web-dsh,已有 profile 不会 double-insert;profile 仍通过 @zendev-lab/spark-web-dsh 解析客户端插件。
  • 异常预算未增长;依赖边从 180 降到 179(CLI 不再依赖 DSH 客户端包)。

后续工作

  • 不在本 PR 把 DSH web 完全 native 化为 Spark HTTP/UI;spark web 仍启动 DSH profile。
  • Phase 2 剩余:dsh-tools guard/pre-execute、dsh-scope、native spark-files 插件。

…he app

Search/fetch is a stateless tool family, so it now lives at
packages/spark-tool-web. spark web is a Spark-owned process, so the DSH
profile boot and onboarding client move into apps/spark-web with a
spark-web companion. The dispatcher spawns that companion like hub/tui.
Package budget stays closed at 44.
@codspeed-hq

codspeed-hq Bot commented Aug 19, 2026

Copy link
Copy Markdown

Merging this PR will not alter performance

✅ 3 untouched benchmarks
⏩ 7 skipped benchmarks1


Comparing zrr1999:feat/spark-tool-web-app (b9e1055) with main (0a993bf)

Open in CodSpeed

Footnotes

  1. 7 benchmarks were skipped, so the baseline results were used instead. If they were deleted from the codebase, click here and archive them to remove them from the performance reports.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant