Repository navigation
Commit c475b45
<!-- claude-projects-attribution: {"github_login":"os-tesla"} -->
_Requested by **Tesla** · [project
thread](https://claude.ai/code/project/chan_01AXsQkLFKRdQCqQ3RTr6Jao?thread=cmsg_01AXsQkLFKRdQCqQ3RTr6JaoAqVfFyhsxKuFcEP9YTBj25)_
Part of #25712 (4b PR 2c: main's red Test UI 8/16 and 9/16 tests read
what the tree has).
Part of objectstack#25677.
Clause-②: no
Metadata-protocol: none
## 维护者速读(草稿)
- **改了什么:** objectui 那份 CI
说明页(`ui/content/docs/guide/ci-cd-pipeline.md`)删掉已被 #25745 删除的两个
workflow(`changeset-release.yml`、`spec-range-floors.yml`)的清单行、章节和
`NPM_TOKEN` 行;两个测试文件不再去读这两个已不存在的文件。
- **为什么改:** `main` 上 Test UI 8/16 和 9/16 因此是红的(11 个失败)。本 PR 后只剩 1 个:十个嵌套
workflow 还在调用已删除的 `scripts/objectstack-pin.mjs`。这是真问题,由 2d 删除
`ui/.github/workflows/**` 时一并清掉。
- **风险与代价(含回滚):** 只动一页文档和两个测试,不动任何会运行的代码或受管面;回滚 = revert 本 PR。
- **席位意见:**(留空)
- **你要做的:** 无,Tier S,由席位落地。
## 席位核对
(left for the dispatch seat)
## Why
objectstack#25745 (4a) deleted
`ui/.github/workflows/changeset-release.yml` and
`ui/.github/workflows/spec-range-floors.yml` when `ui/` took
objectstack's one release lane for both scopes.
`scripts/ui-import/README.md` recorded that three `ui/scripts/__tests__`
files still read them and left them to this card. On `main` (`90a34e20`,
`e167956e`), and reproduced locally:
- **Test UI 8/16:** `ci-cd-pipeline-doc.test.ts`, 9 failures (`ENOENT …
ui/.github/workflows/changeset-release.yml`; inventory rows for both
deleted files).
- **Test UI 9/16:** `workflow-cache-save-bound.test.ts`, 2 failures
(`changeset-release.yml must still define a release: / lane: job`).
The two workflows stay deleted. Each fix makes the page and the tests
describe the tree as it is. Nothing is skipped: rows whose whole subject
is gone retire, and the disposition is written beside them.
## What changes
- `ui/content/docs/guide/ci-cd-pipeline.md` (+16 / −240):
- The two inventory rows, the `### Changeset Release` section and its
four sub-sections, the `### Spec Range Floors` section, and the
`NPM_TOKEN` row (its only user was the deleted workflow) are removed.
- Historical prose that named `changeset-release.yml` now says "the
Changeset Release workflow". The page's own test reads every bare
`name.yml` as a claim that the file exists.
- The two present-tense lists that included `spec-range-floors.yml` drop
it.
- `## Release Workflows` opens with one paragraph saying the two
workflows were deleted by #25745 and that `@object-ui/*` now publishes
in objectstack's release lane.
- `ui/scripts/__tests__/ci-cd-pipeline-doc.test.ts` (+16 / −57). In "the
four sections measured as parity defects":
- the two units (`changeset-release.yml release` and
`spec-range-floors.yml`) and their entries in the jobs-per-workflow pin
come out;
- so does the `lane` exclusion check;
- so do the four `DECLARED_NON_RUN_COMMANDS` entries that explained the
release job's `publish:` input.
- The sweep's inherited-declaration pin goes from five keys to one.
- A paragraph beside the set records the retirement. The two parser
floors (`> 8`) still hold on what is left.
- `ui/scripts/__tests__/workflow-cache-save-bound.test.ts` (+11 / −2):
`changeset-release.yml::release` (40) and `changeset-release.yml::lane`
(20) leave their two derived-ceiling tables. Each removal is recorded
the way the file already records `stale.yml::stale`'s: "re-adding it
does not restore a pin".
## The one red that stays, owned by PR 2d
Test UI 8/16 keeps one failure after this PR:
`ui/scripts/__tests__/check-pre-install-import-graph.test.ts` > `finds
no pre-install gate reaching a package`.
```
AssertionError: a script this repository runs before `pnpm install` needs `node_modules` to load: expected [ Array(1) ] to deeply equal []
+ "unresolved: scripts/objectstack-pin.mjs",
```
That is a true finding on the tree, not a stale pin. #25745 deleted
`ui/scripts/objectstack-pin.mjs`, but ten nested workflows still run
`node scripts/objectstack-pin.mjs build` before their install step:
`ci.yml`, `docs-deploy.yml`, `lint.yml`, `live-e2e.yml`,
`lockfile-dedupe.yml`, `node-esm-load-gate.yml`,
`performance-budget.yml`, `published-dist-gate.yml`, `repo-gates.yml`
and `shadcn-check.yml` under `ui/.github/workflows/`. Those files are
Tier H since #25834, never run nested, and are deleted by PR 2d. Per the
dispatcher's ruling, there are no throwaway edits to them here. The
finding is the first row of 2d on #25712.
## Verification
Run from `ui/` per `ui/AGENTS.md`:
| Run | This PR | `main` `e167956e` |
|---|---|---|
| The three files: `pnpm exec vitest run --project unit
scripts/__tests__/ci-cd-pipeline-doc.test.ts
scripts/__tests__/workflow-cache-save-bound.test.ts
scripts/__tests__/check-pre-install-import-graph.test.ts` | 1 failed /
132 passed (the owned row above) | 12 failed / 121 passed |
| `ci-cd-pipeline-doc.test.ts` alone | 85 passed | 9 failed |
| The whole `scripts/__tests__` suite, `--shard=1/2` and `--shard=2/2` |
26 failed / 5,576 passed | — |
Of the 26 suite failures, one is the owned row. The other 25 are
`date-only-zone-pins-10183` ×23 and `unit-registry-absence-collision`
×2, and they fail identically on a clean `main` `e167956e` checkout here
(25 failed / 19 passed for those two files). Their spawned runs report
"ran no case at all" on this unbuilt box, so they are not this diff's.
Derived gates (`node scripts/pm/dispatch-gates.mjs --commands --repo
objectstack-ai/objectstack` from this diff): 18 families, all exit 0 at
this head; `--ran` reconciles 18 run, 0 NOT-MEASURED, 0 UNRUN. The
slowest were `check:query-options-erasure` (285 s),
`check-comment-mask-corpus` (206 s) and `check:type-check-debt` (185 s).
🤖 Generated with [Claude Code](https://claude.com/claude-code)
https://claude.ai/code/session_01A6SEitNngAMugGbuJHWsDS
Co-authored-by: Claude <noreply@anthropic.com>
1 parent 1210544 commit c475b45
3 files changed
Lines changed: 43 additions & 299 deletions
File tree
- ui
- content/docs/guide
- scripts/__tests__
0 commit comments