Uh oh!
There was an error while loading. Please reload this page.
docs(runner): 删掉 README 两处虚构能力面(createRunner/runner.config.js),修正 404 文档链接 (#3576) - #3602
Merged
Merged
Conversation
`createRunner()` / `runner.config.js` 全仓零代码引用,包也没有任何库入口 (main/module/exports/types 全无),按 #3533 的口径清除;`/docs/runner` 是死路由,改成实际存在的 `/docs/utilities/runner`。 Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01GTRjn8xBqp75dk7kFupVRt
The latest updates on your projects. Learn more about Vercel for GitHub. |
This was referenced Aug 7, 2026
Contributor
✅ Console Performance Budget
📦 Bundle Size Report
Size Limits
|
yinlianghui
commented
Aug 7, 2026
CollaboratorAuthor
正文里两处"已另开 issue"的编号:
两条都未认领,留给 PM 分诊;本 PR 不碰。 Generated by Claude Code |
yinlianghui
marked this pull request as ready for review
August 7, 2026 15:44
Uh oh!
There was an error while loading. Please reload this page.
This was referenced Aug 7, 2026
akarma-synetal pushed a commit
to akarma-synetal/objectui
that referenced
this pull request
Aug 10, 2026
…ion (objectstack-ai#3577) (objectstack-ai#3616) 三类结构性虚构,均对 origin/main 逐条复核后处理。范围是整页 8 处锚点, 不是正文列的 3 处 —— 只修 Directory Structure 会让全页继续自相矛盾。 1. 幽灵目录。`packages/runner/src` 下实测只有 App.tsx / LayoutRenderer.tsx / main.tsx / index.css / lib/ / 测试文件,没有 `schemas/`、没有 `components/`, 包根也没有 `public/`。按 objectstack-ai#3534/objectstack-ai#3539 先例(删手抄目录树,指真源)整块删掉 Directory Structure,换成一段实测过的 prose,并把承重信息落在唯一真实的 元数据目录 `src/app-data/` 上 —— 它由 `.gitignore` 排除、新检出下不存在, 布局与解析顺序由本页自己的 Metadata Loading 一节(objectstack-ai#3581 补)承接。 其余 5 处 `src/schemas/` 引用(Use Cases 两处、Add Custom Schemas、 Best Practices 目录树)一并按 Metadata Loading 的真实契约改写为 `src/app-data/pages/*.json`;页文档形状取 App.tsx 兜底页的 `{ type: 'page', title, body: [] }`,与本页 Metadata Loading 表格里 「the page document (PageNodeSchema)」一致。 2. 「内置示例 schema」。这个包一个 schema 文件都不带:承载它们的 `src/app-data/` 在 `packages/runner/.gitignore:1` 里,缺该目录时 LocalBundleLoader 三个 `import.meta.glob` 编译为 `{}`,`/` 渲染内置兜底 `No index page found.`。What's Included 下那节列七类「Runner 包含的示例 schema」整节改写为读者实际要做的事(往 `src/app-data/` 放 JSON,或用 `?api=` 指后端);下方 `## Example Schemas` 改题为 Schemas to Start From, 并说明这些例子活在文档里、不在包里。 3. Package Information。`Version: 0.3.1` 直接删除,不改成 17.3.0 —— `@object-ui/runner` 在 `.changeset/config.json` 的 fixed 组里随 39 包同发, 手抄版本号必然再次漂移(分诊亦持此意见);当前版本改为指向 npm 页。 `Type: Application (not published to npm)` 与实测相反:package.json 是 `"private": false` + `publishConfig.access: "public"`,registry 上 `dist-tags.latest = 17.3.0`。改为不随版本漂移的措辞:已发布,但它是应用 不是库 —— package.json 不声明 main/module/exports/types,没有可 import 的 东西(与 PR objectstack-ai#3602 刚给 README 定下的说法一致)。 `src/components/` 保留一处 —— Add Custom Components 的 `// src/components/ MyComponent.tsx`。那是让读者自己建的文件(下方注册片段的相对 import 必须与它 对齐),已在上一句明写「包里不带组件,这个目录你自己加」,不再是「它存在」的 断言。 越界发现另行开单,不在本 PR 修:Features 的「All official plugins included」、 Best Practices 的环境变量小节(objectstack-ai#3538 删了 Environment Variables 整节却漏了它)、 Add Custom Routes 的 react-router-dom(runner 不依赖它,路由是手写 history.pushState)。objectstack-ai#3604 是 README 的另一件事,未触碰。 Fixesobjectstack-ai#3577 Claude-Session: https://claude.ai/code/session_01GTRjn8xBqp75dk7kFupVRt Co-authored-by: Claude <noreply@anthropic.com>
akarma-synetal pushed a commit
to akarma-synetal/objectui
that referenced
this pull request
Aug 10, 2026
…bjectstack-ai#3604) (objectstack-ai#3621) 第 1 步「Create a schema file (JSON or TypeScript)」与本文件自己的 §Metadata Loading 直接矛盾:runner 没有任何路径能加载 TypeScript 写的 schema —— LocalBundleLoader 的三个 import.meta.glob 全是 `.json` (MetadataLoader.ts:26-28),NetworkLoader 只 fetch 固定的 `.json` 路径 并直接 `res.json()`(同文件 89、101 行)。按 objectstack-ai#3533 的口径(文档不许描述 实现里不存在的能力)改写成 JSON 的两条真实路线,并点名 `src/app-data/` 是 git-ignored、新检出下不存在、仓里没有任何脚本会创建它 —— 这正是照旧 文本操作的读者下一步会撞上的坑(每次加载返回 null,页面渲染成 404)。 第 3 步「changes reload automatically」按 loader 分路限定而非删除: `src/app-data/` 下的 JSON 在 Vite 的 module graph 里,改动不需要重启 dev server;`?api=` 那条 Vite 根本看不见后端。这里刻意没有断言浏览器会自动 刷新 —— App.tsx 只导出组件,是 react-refresh 的边界,更新可能被 保状态的重渲染吸收,而这一点脱离实跑无法从代码确认;写不确定的机制 断言正是本 issue 要清的那类虚构。改成「视图仍是旧文档就刷新页面」, 两种机制下都成立,且对读者可操作。 无 changeset:包 README 的文档修正,与 objectstack-ai#3602(同一文件,同样只改 README) 先例一致;ci.yml / lint.yml 对 `**/*.md` 走 paths-ignore。 Claude-Session: https://claude.ai/code/session_01GTRjn8xBqp75dk7kFupVRt Co-authored-by: Claude <noreply@anthropic.com>
akarma-synetal pushed a commit
to akarma-synetal/objectui
that referenced
this pull request
Aug 10, 2026
…stack-ai#3644) `packages/runner/README.md` 两处把预装插件写成开放集合,实测预装的恰好是 kanban + charts 两个:`packages/runner/package.json` 的 dependencies 里 `plugin-*` 只有 `@object-ui/plugin-charts` 与 `@object-ui/plugin-kanban`, `packages/runner/src/App.tsx:14-15` 也只有这两行注册 import。 - §Features:`(Kanban, Charts, etc.)` 已穷举全部两个却仍缀 `etc.`,读起来是 「还有更多没列」。去掉 `etc.` 并闭合为实测集合;一并去掉 `popular` —— 集合闭合后「popular plugins」仍读作「从更大集合里挑的几个热门」,会把刚 合上的口子重新撑开。 - §Pre-installed Plugins:非插件的加粗行「**Additional plugins can be added as needed**」被排在「comes with these plugins pre-configured」引出的列表 里、且与前两条同样加粗,形状上成了第三个预装项。把它移出列表,降为列表 下方的说明句,并按实测写清加插件的真实代价(改 `package.json` 依赖、 `src/App.tsx` 注册 import,以及现有两个插件在 `vite.config.ts` 别名表和 `src/index.css` `@source` 里各有的条目)后重新构建 —— runner 没有运行时 插件安装机制。 无 changeset:包 README 的事实订正,不改任何发布产物或公开 API,沿用 objectstack-ai#3602 / objectstack-ai#3621 / objectstack-ai#3634 的先例。 Fixesobjectstack-ai#3632 Claude-Session: https://claude.ai/code/session_01GTRjn8xBqp75dk7kFupVRt Co-authored-by: Claude <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for freeto join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Fixes#3576
按 #3533 的口径(文档不许描述实现里不存在的能力)清掉
packages/runner/README.md的两个虚构能力面,并修正一条 404 的文档链接。改动只落在这一个文件。三处处置与零命中证据
1. §Programmatic Usage(原 41-50 行)—— 整节删除,并把上方 §Installation 改写成 runner 的真实用法。
全仓仅此两行,且
packages/runner/package.json没有main/module/exports/types任何一个字段(files只有dist/README.md/CHANGELOG.md/LICENSE),所以import ... from '@object-ui/runner'无从解析 —— 这个包是index.html+src/main.tsx的 Vite 应用,不是库。选了 issue 给的第二个选项(改写为真实用法)而不是纯删,原因是纯删会留下一个孤儿:上方
## Installation教的pnpm add @object-ui/runner只在"可 import"的前提下才成立,而 issue 正文已把它点名为同一处虚构的连带面("因此也是误导:装了也没有可 import 的入口")。现在合并为一节## Running the Runner,与content/docs/utilities/runner.mdx的同名小节口径一致(clone →pnpm install→pnpm --filter @object-ui/runner dev),原来的pnpm dev/build/preview三条命令原样保留在下半段。删掉### Programmatic Usage后### As a Development Tool成了唯一的三级标题,一并拍平。2. §Configuration(原 98-112 行)——
runner.config.js删除,改写为真实的两个配置面。同样零代码引用(含未跟踪文件的全盘 grep 也只有这一行)。改写后指向实测存在的两处:
vite.config.ts(构建选项 + 让 runner 直接从 monorepo 源码启动的别名表;dev server 用 Vite 默认端口 5173,靠 Vite 自己的 flag 改)与?api=查询参数(指回本 README 已有的 §Metadata Loading 锚点,不重复叙述)。这与 #3594 刚落的 §Metadata Loading 那句"it reads no environment variables and no config file"互相印证;#3538 此前已清掉环境变量那一面,这是最后一处虚构配置面。3. §API Reference 的链接(原 167 行)——
/docs/runner→/docs/utilities/runner。路由核对(人工,理由见下):
content/docs/runner.*不存在;content/docs/utilities/runner.mdx存在,且content/docs/utilities/meta.json的pages里列了runner,content/docs/meta.json的pages里列了utilities。同一 README 底部## Links的 Documentation 一条本来就是这个 URL,package.json的homepage也是 —— 现在三处一致。顺带把标题
## API Reference改成## Documentation:这一节的正文本来就是"detailed documentation",而本 PR 刚刚确认这个包没有可引用的 API,留着 API Reference 是被删掉那套"库"叙事的最后残留。这是本 PR 唯一一处超出三条 issue 字面的改动,单独在此声明。改动后三条 grep 全部零命中:
全文一致性核对
今天有三个 PR 动过这个文件(#3581 / #3594,以及本 PR),所以通读了改后全文:开头第 3 行"standalone development server and runtime"、§Features 的"Built-in Vite development server"与新的 §Running the Runner 同调,全篇不再有"可 import 的库"这一叙事;新 §Configuration 与 §Metadata Loading 不冲突也不重复;
#metadata-loading锚点对应## Metadata Loading标题,有效。另确认没有任何文件链接到本 README 的旧锚点(git grep "runner/README\|#programmatic-usage\|#as-a-development-tool"只命中 CHANGELOG 里一句无关文字),所以拍平标题不会打断站内链接。通读时发现 §Development Workflow 第 1 步"Create a schema file (JSON or TypeScript)"与 §Metadata Loading 不符(两个 loader 都只认 JSON:
import.meta.glob('../app-data/**/*.json')与fetch(base + '/pages/x.json'))。不在本 issue 的三条范围内,未在本 PR 修改,已另开 issue 记录。验证
scripts/check-doc-links.mjs的SCAN_ROOTS只有content/docs/examples/ 根README.md,packages/**/README.md不在其中;而且即使在其中也没用 ——judgeHref()在check-doc-links.mjs:552对任何带 scheme 的 href 直接return null,唯一例外是SELF_REPO_BLOB_RE(本仓 github blob/tree URL),站内绝对地址https://www.objectui.org/docs/...从不做路由校验。所以docs:check-links那句绿是"没扫到",不是"扫过且通过"。这个盲区在别的包 README 上已经兑现成 9 处死链,已另开 issue。Changeset
无。 按 #3581 的先例(同样是
packages/runner/README.md+ docs 的纯文档 PR,无 changeset)。核对过没有门禁反对:CI 的changeset-check跑的是check-changeset-fixed.mjs(校验所有包在 fixed group 里,不要求每个 PR 带 changeset),changeset-guard跑的是check-changeset-no-major.mjs(只拦 major),两条本地都绿。README 确实进 npm tarball(files含README.md),但改的是纯错误叙述,没有版本语义。Generated by Claude Code