Skip to content

web lane base reds: the cmux-next docs references, the docs-search fixture, and acpmux's bundled catalog - #25180

Merged
teamleaderleo merged 6 commits into
feat-cmux-nextfrom
cmux/docs-cli-reference-fresh
Oct 26, 2026
Merged

teamleaderleo merged 6 commits into
feat-cmux-nextfrom
cmux/docs-cli-reference-fresh

Conversation

@teamleaderleo

@teamleaderleo teamleaderleo commented Oct 25, 2026 •

Copy link
Copy Markdown
Collaborator

Three reds of the CI / web / Web tests lane are red on feat-cmux-next, so the lane
fails on every PR that pulls it in. Each is one commit here.

1. The two cmux-next docs references are stale (web/tests/next-docs.test.ts).
web/data/next-docs/cli-reference.generated.json last matched the action catalog at
cf81808; the test's own diff names remote.openRemote, sidebar.item.toggleArchive
and more (603 → 607 MCP tools, 685 → 689 verbs). The settings reference missed
agentPane.display.environment.placement. Both rewritten by their own generator,
bun web/scripts/export-next-docs.ts — the same buildCliReference /
buildSettingsReference the test asserts against. No hand edits.

2. The docs-search fixture cannot resolve the generator's imports
(web/tests/docs-search-cache.test.ts). It symlinks app, i18n, messages and
node_modules into a temp web/ and runs tools/build-docs-search.mjs there, but
cf81808 gave that generator three ../data/next-docs/ imports, so every build in
the test died on module resolution before any assertion ran. data joins the symlinks.

3. acpmux's bundled model catalog is not the snapshot
(web/tests/model-catalog.test.ts, "acpmux bundles the same catalog"). #24631 added
inlineFast: true to the nine OpenAI models in web/data/model-catalog/snapshot.json
without the bundled copy, and the test asserts byte-identity.
web/tools/refresh-model-catalog-snapshot.ts writes one body to both paths, so this is
a cp from the snapshot. inlineFast is read by the composer's model picker in
webviews/, not by acpmux, which serves the bytes: offline and first-run acpmux now
offers the same inline Fast toggle as the live feed.

4. scripts/ci/generated-files-baseline.txt gains the two next-docs references, because
cmux-next no new generated files errors on a PR that edits a tracked generated file no
"committed" generator covers — which is what a regeneration is. The baseline is defined
as exactly that set and the base tracks both files; the guard's other doors (a new
committed export, a widened committed generator) are refused on purpose. The cutover that
gitignores them removes the lines again.

Changelog

none

Observed / Not run

Observed: at origin/feat-cmux-next the docs generator rewrites both references to
exactly these bytes; cmp on the two catalog files now reports no difference; the
import list in web/tools/build-docs-search.mjs:15-17 against the fixture's symlink
list; python3 scripts/ci/generated_files_guard.py check goes from two errors to none
and tests/test_generated_files_guard.py passes (20 tests); prepush-gate.py reports
no new violations.
Not run: the web Bun suite itself (this Linux host has no bun install for web/, and
the docs-search test needs pagefind from node_modules); CI's web lane runs all three on
this PR. Reds 2 and 3 are each confirmed as pre-existing by the shard logs of an
earlier head of this PR, which touched only generated JSON.

Owner note: cmux-tui/crates/acpmux/catalog/models-v1.json is PL-acpmux's area
(guardrails owner warning). The change is a byte copy from the file the refresh tool
declares as its source; no acpmux source changes.

Overlap: #23984 also regenerates settings-reference.generated.json (it adds a setting).
Generated files take either side on a conflict and the base autofix regenerates them.

Agent session: huge-blue

…(base red)

`web/tests/next-docs.test.ts` is red on `feat-cmux-next`: the CLI and MCP
reference last matched the action catalog at cf81808, and the catalog has
moved many times since (`remote.openRemote`, `sidebar.item.toggleArchive` and
others), while the settings reference misses
`agentPane.display.environment.placement`. Nothing regenerates them on a base
push, so the `CI / web / Web tests` shards fail on every PR that pulls that lane
in, and `web/tests/docs-search-cache.test.ts` fails with them.

Written by `bun web/scripts/export-next-docs.ts`, the generator the test's own
`expect(buildCliReference(...)).toEqual(...)` compares against. No hand edits.

### Observed / Not run
Observed: at `origin/feat-cmux-next`, the generator rewrites both files to these
bytes, so both assertions' inputs were stale.
Not run: the web Bun suite itself (no `bun install` for `web/` on this host);
CI's web lane runs it on this PR.

Agent-Session: https://cmux.com/deeplink/agent?harness=claude&session=01a174e4-3868-7f51-8f3d-21b34ad270b2&host=huge-blue
@cursor

cursor Bot commented Oct 25, 2026

Copy link
Copy Markdown

Bugbot needs on-demand usage enabled

Bugbot uses usage-based billing for this team and requires on-demand usage to be enabled.

A team admin can enable on-demand usage in the Cursor dashboard.

@teamleaderleo teamleaderleo added the risk:low Risk tier (docs/ci/risk-tiers.md) label Oct 25, 2026
@teamleaderleo

teamleaderleo commented Oct 25, 2026 •

Copy link
Copy Markdown
Collaborator Author

Owned by chief-fix-4 on huge-blue · session

@blacksmith-sh

blacksmith-sh Bot commented Oct 25, 2026 •

Copy link
Copy Markdown

Found 8 test failures on Blacksmith runners:

Failures

Test View Logs
/tmp/tmp9bizht1v/summary-missing.json (live):/summary-missing.json (live): View Logs
/tmp/tmprtpn5976/summary-fail.json (live):/summary-fail.json (live): View Logs
[new_workspaces] debug.new_workspace timed 0 of 50 new workspace rows/
[new_workspaces] debug.new_workspace timed 0 of 50 new workspace rows
View Logs
[new_workspaces] the window draws no frames/[new_workspaces] the window draws no frames View Logs
[tabs] debug.tab_switch timed 0 of 40 switches/
[tabs] debug.tab_switch timed 0 of 40 switches
View Logs
[tabs] the window draws no frames/[tabs] the window draws no frames View Logs
bench OTHER_SWIFT_FLAGS is 'OTHER_SWIFT_FLAGS=$(inherited) -DCMUX_BENCH_HOOKS -DCMUX_BL
OCKING_CHECKS'/
bench OTHER_SWIFT_FLAGS is 'OTHER_SWIFT_FLAGS=$(inherited) -DCMUX_BENCH_HOOKS -DCMUX_BL
OCKING_CHECKS'
View Logs
bench OTHER_SWIFT_FLAGS is 'OTHER_SWIFT_FLAGS=$(inherited) -DCMUX_BENCH_HOOKS -DCMUX_BL
OCKING_CHECKS'/
bench OTHER_SWIFT_FLAGS is 'OTHER_SWIFT_FLAGS=$(inherited) -DCMUX_BENCH_HOOKS -DCMUX_BL
OCKING_CHECKS'
View Logs

Fix with [code]smith
Need help on this PR? Tag @codesmith-bot with what you need.

@teamleaderleo

Copy link
Copy Markdown
Collaborator Author

Bead cx-kosvy created for this PR by the cmux coordinator.

`cmux-next no new generated files` errors on a PR that edits a tracked generated
file no "committed" generator and no baseline line covers, and both next-docs
references are exactly that: git tracks them (cf81808) and
generated-files.json has no entry for `bun web/scripts/export-next-docs.ts`.
So the regeneration this PR is, which is the only way to make
web/tests/next-docs.test.ts green, cannot pass that guard without the lines.

The baseline is defined as "the generated files git still tracks that no
committed generator covers", and the base tracks both, so this is the guard's
own door for them; its other two (a new committed export in generated_outputs.py,
a widened committed generator) are refused on purpose, because outputs may only
move out of git. The cutover that gitignores these and generates them with the
docs removes both lines again.

Agent-Session: https://cmux.com/deeplink/agent?harness=claude&session=01a174e4-3868-7f51-8f3d-21b34ad270b2&host=huge-blue
@cursor

cursor Bot commented Oct 25, 2026

Copy link
Copy Markdown

Bugbot needs on-demand usage enabled

Bugbot uses usage-based billing for this team and requires on-demand usage to be enabled.

A team admin can enable on-demand usage in the Cursor dashboard.

@github-actions github-actions Bot added risk:normal Risk tier (docs/ci/risk-tiers.md) and removed risk:low Risk tier (docs/ci/risk-tiers.md) labels Oct 25, 2026
…r imports (base red)

`web/tests/docs-search-cache.test.ts` is red on `feat-cmux-next`: its fixture
symlinks `app`, `i18n`, `messages` and `node_modules` into a temp `web/` and runs
`tools/build-docs-search.mjs` there, but cf81808 gave that generator three
imports under `../data/next-docs/` (the generated CLI and settings references and
`pages`). The fixture cannot resolve them, so every build in the test dies with
"Cannot find module '../data/next-docs/cli-reference.generated.json'" before any
assertion runs, which is the `CI / web / Web tests (2/4)` and `(4/4)` red on every
PR that pulls the web lane in.

`data` joins the symlinked directories. It is read-only in the fixture, like the
other four; nothing in the test writes under it.

### Observed / Not run
Observed: the import list in web/tools/build-docs-search.mjs:15-17 against the
fixture's symlink list at web/tests/docs-search-cache.test.ts:55, and the CI log's
module-resolution failure naming exactly that path.
Not run: the test itself (no `bun install` for `web/` on this Linux host, and the
test needs pagefind from node_modules); CI's web lane runs it on this PR.

Agent-Session: https://cmux.com/deeplink/agent?harness=claude&session=01a174e4-3868-7f51-8f3d-21b34ad270b2&host=huge-blue
@teamleaderleo

Copy link
Copy Markdown
Collaborator Author

cmux-next fast gates / post cmux-next/fast-gates is red on 18 of 21 fresh feat-cmux-next PR heads in the last 2:00:00, so it is most likely a base red, not this PR's. The base-reds lane has it; a base merge picks up the fix once it lands.

`web/tests/model-catalog.test.ts` "the checked-in catalog > acpmux bundles the
same catalog" is red on `feat-cmux-next`: it asserts the two files are
byte-identical, and #24631 added `inlineFast: true` to the nine OpenAI models in
`web/data/model-catalog/snapshot.json` without the bundled copy. That is the
`CI / web / Web tests (4/4)` red on every PR that pulls the web lane in.

`web/tools/refresh-model-catalog-snapshot.ts` writes one body to both paths, so
the snapshot is the source of truth and the bundled copy is its copy; this is
`cp web/data/model-catalog/snapshot.json
cmux-tui/crates/acpmux/catalog/models-v1.json`, nothing else. The only
difference was those nine `inlineFast` flags, and `inlineFast` is read by the
composer's model picker in `webviews/`, not by acpmux, which serves the bytes:
offline and first-run acpmux now offers the same inline Fast toggle as the live
feed, which is what #24631 intended.

### Observed / Not run
Observed: `cmp` on the two files now reports no difference; the structural diff
before this commit was exactly nine `"inlineFast": true` lines under the
`openai` provider's models.
Not run: the web Bun suite (no `bun install` for `web/` on this host); CI's web
lane runs it on this PR.

Agent-Session: https://cmux.com/deeplink/agent?harness=claude&session=01a174e4-3868-7f51-8f3d-21b34ad270b2&host=huge-blue
@teamleaderleo teamleaderleo changed the title docs(web): the cmux-next CLI and settings references are fresh again (base red) web lane base reds: the cmux-next docs references, the docs-search fixture, and acpmux's bundled catalog Oct 25, 2026
teamleaderleo and others added 2 commits October 26, 2026 03:24
The base merge added the setting; the generated reference follows the schema.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Agent-Session: https://cmux.com/deeplink/agent?id=aid-24ce2bb1cc47fb95fa20
@teamleaderleo
teamleaderleo temporarily deployed to cmux-tui-merge-tree October 26, 2026 03:25 — with GitHub Actions Inactive
@github-actions

Copy link
Copy Markdown
Contributor

cmux status (one comment, edited in place; each line is updated by the job that owns it)

Review 4af43a0: HQ feed card · gallery before/after runs · checks

App of this head (app.zip, kept 1 day)

gh workflow run reload-build.yml -R manaflow-ai/cmux --ref feat-cmux-next -f tag=pr25180 -f ref=cmux/docs-cli-reference-fresh -f platform=macos -f backend_mode=local

@teamleaderleo

Copy link
Copy Markdown
Collaborator Author

cmux-next guards / nightly-guards / workflow-guard-tests / release-notary is red on 12 of 14 fresh feat-cmux-next PR heads in the last 2:00:00, so it is most likely a base red, not this PR's. The base-reds lane has it; a base merge picks up the fix once it lands.

@teamleaderleo

Copy link
Copy Markdown
Collaborator Author

Review (GPT-6.1-sol): SHIP at 4af43a0

Independent review (Codex, gpt-6-astra at xhigh, read-only, no checkout — it reported itself as GPT-6.1-sol). No correctness blocker found.

  • The guard rejects a baseline addition only when the base did not track the path. Both web/data/next-docs/cli-reference.generated.json and settings-reference.generated.json are base-tracked, so these entries are valid legacy coverage. Declaring them as a new committed generator's outputs would be the stricter change the guard explicitly refuses. (The docstring's "may only shrink" is broader than its executable rule; pre-existing wording.)
  • The data symlink in web/tests/docs-search-cache.test.ts resolves the three data/next-docs imports and follows the fixture's existing live-source symlink pattern. The build does not write there and rendered data stays part of the cache fingerprint, so no vacuous pass and no flakiness. A narrower data/next-docs link would also work.
  • Making acpmux's bundled catalog/models-v1.json a byte copy of web/data/model-catalog/snapshot.json is correct: web/tools/refresh-model-catalog-snapshot.ts writes one identical body to both paths, and web/tests/model-catalog.test.ts:225 compares them byte-for-byte, so future drift fails that test.

@teamleaderleo
teamleaderleo merged commit a8d9592 into feat-cmux-next Oct 26, 2026
140 of 144 checks passed
@teamleaderleo
teamleaderleo deleted the cmux/docs-cli-reference-fresh branch October 26, 2026 03:40
teamleaderleo added a commit that referenced this pull request Oct 26, 2026
…engine-row

Generated-file conflicts resolved, not hand-merged:
- scripts/ci/generated-files-baseline.txt: base's version. #25180 landed both
  next-docs baseline lines, so this branch's own line is redundant.
- Localizable.xcstrings: base's file with this branch's six chiefEngine keys
  spliced in as text, so every other byte matches base (792 insertions, 0
  deletions). No key changed on both sides.
- web/data/next-docs/settings-reference.generated.json: regenerated by
  web/scripts/export-next-docs.ts from the merged schema (count 493).
- schemas/settings-export/settings-schema.sources.sha256: left at this
  branch's stamp; the fleet settings export rewrites it next.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Agent-Session: https://cmux.com/deeplink/agent?id=aid-24ce2bb1cc47fb95fa20
teamleaderleo added a commit that referenced this pull request Oct 26, 2026
…engine-row

One generated-file conflict, not hand-merged: the settings source stamp
(schemas/settings-export/settings-schema.sources.sha256) is left at this
branch's value; the fleet settings export rewrites it in the next commit.
The two web/data/next-docs references are regenerated by
web/scripts/export-next-docs.ts from the merged schema (count 495).

Picks up #23945 and #25180.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Agent-Session: https://cmux.com/deeplink/agent?id=aid-24ce2bb1cc47fb95fa20
@github-actions

github-actions Bot commented Oct 26, 2026 •

Copy link
Copy Markdown
Contributor

This branch had an error being deployed

1 failed and 2 inactive deployments
sentry-dsyms — 4af43a04 Deployed Oct 26, 2026 by teamleaderleo via upload cmux-tui dSYMs to Sentry #54306
artifacts — 4af43a04 Deployed Oct 26, 2026 by teamleaderleo via publish to R2 #54306
cmux-tui-merge-tree — 4af43a04 Deployed Oct 26, 2026 by teamleaderleo via publish the merge tree #6032
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

risk:normal Risk tier (docs/ci/risk-tiers.md)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant