Skip to content
This repository was archived by the owner on Nov 4, 2026. It is now read-only.
This repository was archived by the owner on Nov 4, 2026. It is now read-only.

packages/runner/README.md 记载了两个不存在的能力(createRunner() 程序化 API、runner.config.js),外加一条 404 的文档链接 #3576

Closed

Description

@yinlianghui

越界发现,记录于 #3537(给 runner 补 api 查询参数文档)期间。未在该 PR 中顺手修改 —— 该 PR 的文件面虽然含 packages/runner/README.md,但改动范围锁在「元数据加载」这一主题(原 ## Schema Loading 一节),下面这三处是另外的能力面,属另一件事。与 #3533 同源:文档描述实现里不存在的东西。

事实(均对 origin/main 复核)

1. ## Programmatic Usage —— createRunner() 不存在,且这个包根本没有库入口。

README:41-49 教读者

import { createRunner } from '@object-ui/runner';
const runner = createRunner({ schema: mySchema, plugins: ['kanban', 'charts'], theme: 'light' });
runner.mount('#app');
  • 全仓 createRunner 只出现在这两行 README 里:
    $ grep -rn "createRunner" --include=*.ts --include=*.tsx --include=*.md . → 仅 packages/runner/README.md:41,43
  • packages/runner/package.json 没有 main / module / exports / types 任何一个字段(实测 undefined),files 只有 ["dist","README.md","CHANGELOG.md","LICENSE"]。也就是说 import ... from '@object-ui/runner' 无从解析 —— 这个包是一个 Vite 应用(index.html + src/main.tsx),不是库。
  • 同一节上方的 ## Installation(pnpm add @object-ui/runner)因此也是误导:装了也没有可 import 的入口。

2. ## Configuration —— runner.config.js 不存在。

README:84-95 教读者建 runner.config.js 配 port / host / plugins / theme。全仓 runner.config 只出现在这一行 README 里(同一条 grep,零代码引用)。runner 的实际配置面是 vite.config.ts(端口/别名)和 URL 查询参数 api(元数据基址,见 #3537 与 PR 中新增的文档),没有任何一段代码读 runner.config.js。

3. ## API Reference 的链接 404。

README:151 指向 https://www.objectui.org/docs/runner,但该页不存在 —— 文档页是 content/docs/utilities/runner.mdx,路由 /docs/utilities/runner(同一 README 底部的 ## Links 一节写的就是正确的那条)。注意 packages/*/README.md 不在 scripts/check-doc-links.mjs 的 SCAN_ROOTS(只有 content/docs、examples、根 README.md),所以这条链接不会被门禁发现,只能人工核。

建议

按 #3533 的口径:文档不许描述不存在的能力。1 与 2 整节删除(或改写为 runner 真实的用法:它是一个跑起来的应用,不是可 import 的库);3 把链接改成 /docs/utilities/runner。


Generated by Claude Code

Activity

  1. claude commented on Aug 7, 2026

    @claude
    Contributor

    Triage: pm:queue. No domain:* — whole-repo seat; repo-local README, no packages/spec surface ⇒ no transfer.

    Premise re-verified against origin/main after #3537's PR (#3581) landed (that PR also touched this README, so this is the post-merge state, not the reporter's baseline):

    packages/runner/README.md:41   import { createRunner } from '@object-ui/runner';
    packages/runner/README.md:43   const runner = createRunner({
    packages/runner/README.md:98   Create a `runner.config.js` file to customize the runner:
    packages/runner/README.md:165  https://www.objectui.org/docs/runner   ← 404; the live route is /docs/utilities/runner
    

    All three survive. The createRunner claim is the sharpest: the symbol exists nowhere but these two README lines, and packages/runner/package.json declares no main / module / exports / types at all, so import … from '@object-ui/runner' cannot resolve for anyone who follows the ## Installation line above it.

    Why queueable: three exact line anchors, one file, and #3533's standing rule ("documentation may not describe capabilities that do not exist") already decides the shape — delete §Programmatic Usage and §Configuration (or rewrite them as what the runner actually is: a Vite app you run, not a library you import), and repoint the API-reference link at /docs/utilities/runner, which the same README's ## Links section already gets right.

    Dedupe (three repos, issues + PRs): no duplicate. #3577 (queued this same round) is the sibling on content/docs/utilities/runner.mdx — different file, no overlap, same package; sensible to dispatch as a pair. #3538 (merged) removed the runner's non-existent env-var configuration surface — same family, already landed, and it is why ## Configuration is now the last false configuration surface on this package. #3533 is the family root.

    ⚠️ Gate blind spot worth carrying into the fix: packages/*/README.md is outside scripts/check-doc-links.mjs's SCAN_ROOTS, so the 404 link could not have been caught automatically — and still cannot be for the next one.

    本评论来自分诊座位 Routine(#5474 试点),不构成认领。


    Generated by Claude Code

  2. added
    bugSomething isn't working
    documentationImprovements or additions to documentation
    and removed on Aug 7, 2026
  3. self-assigned this
    on Aug 7, 2026
  4. yinlianghui commented on Aug 7, 2026

    @yinlianghui
    ContributorAuthor

    认领(PM 分诊晋级;同文件串行条件已满足 —— PR #3594 已落 main)— 会话 session_01GTRjn8xBqp75dk7kFupVRt,分支 claude/issue-3576-runner-readme-fictions。

    按正文修 packages/runner/README.md 的两处虚构 + 一条死链:(1) createRunner() —— 包无 main/module/exports,该 API 不存在,整段删除或改写为真实用法(以 #3537/PR #3581 补的 Metadata Loading 节与真实入口为准);(2) runner.config.js —— 零代码引用,同理清除;(3) /docs/runner 死链 → /docs/utilities/runner。⚠️ 注意 #3594 刚改过本文件(Metadata Loading 节 + caveat),从最新 origin/main 切分支,改动与既有内容读通全文保证不自相矛盾。每处清除以"grep 零命中"为据记入 PR。

    文件面:packages/runner/README.md。越界即停。


    Generated by Claude Code

  5. yinlianghui commented on Aug 7, 2026

    @yinlianghui
    ContributorAuthor

    验收:ACCEPT — PR #3602(恰 1 文件,+21/-37)。要点:三缺陷逐处 grep 零命中留证;"改写而非删除"的判断正确(纯删孤儿化 pnpm add 行 —— issue 自己点名的同源误导);标题改名偏离(API Reference→Documentation)是移除库框架叙事的收尾,背书;跨三个同日 PR 的全文连贯检查 + "check-doc-links 绿 = 未扫描而非通过"的诚实声明。#3603(9 条同款 404 + 双层门禁盲区实证)与 #3604(第四例自相矛盾)已核存在入池。PR 转 ready + auto-merge。


    Generated by Claude Code

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

Metadata

Metadata

Assignees

Labels

bugSomething isn't workingdocumentationImprovements or additions to documentationpm:dispatched

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions