chore: drop the unanchored workspace/ ignore rule that hides web-shell sources (#13155)
Some checks are pending
Qwen Code CI / Classify PR (push) Waiting to run
Qwen Code CI / Test (ubuntu-latest, Node 22.x) (push) Blocked by required conditions
E2E Tests / E2E Test (Linux) - sandbox:docker - shard 1/1 (push) Blocked by required conditions
SDK Java / ubuntu-latest / Java 11 (push) Waiting to run
SDK Java / ubuntu-latest / Java 17 (push) Waiting to run
SDK Java / macos-latest / Java 21 (push) Waiting to run
SDK Java / ubuntu-latest / Java 21 (push) Waiting to run
Qwen Code CI / Lint & Static (ubuntu-latest, Node 22.x) (push) Blocked by required conditions
Qwen Code CI / web-shell E2E Smoke (ubuntu-latest, Node 22.x) (push) Blocked by required conditions
Qwen Code CI / Test (macos-latest, Node 22.x) (push) Blocked by required conditions
Qwen Code CI / Test (windows-latest, Node 22.x) (push) Blocked by required conditions
Qwen Code CI / Integration Tests (no-AK, No Sandbox) (push) Blocked by required conditions
Qwen Code CI / Integration Tests (CLI, No Sandbox) (push) Blocked by required conditions
Qwen Code CI / Desktop Shell (ubuntu-22.04) (push) Blocked by required conditions
Qwen Code CI / Desktop Shell (windows-2022) (push) Blocked by required conditions
E2E Tests / Build for E2E (push) Waiting to run
E2E Tests / E2E Test (Linux) - sandbox:none - shard 1/1 (push) Blocked by required conditions
E2E Tests / E2E Test - macOS - shard 1/2 (push) Blocked by required conditions
E2E Tests / E2E Test - macOS - shard 2/2 (push) Blocked by required conditions
E2E Tests / E2E Interactive - OpenTUI renderer (bun) (push) Blocked by required conditions
E2E Tests / channel-plugin E2E (nightly) (push) Blocked by required conditions
E2E Tests / cron-interactive E2E (nightly) (push) Blocked by required conditions
E2E Tests / web-shell Browser Regression (push) Waiting to run
SDK Java / windows-latest / Java 21 (push) Waiting to run
SDK Java / Runtime Broker and Managed Agent MariaDB / Java 21 (push) Waiting to run
SDK Java / Hosted process fault gates / MySQL 8.4 / Java 21 (push) Waiting to run
SDK Java / Real daemon E2E / Java 11 (push) Waiting to run

* chore: drop the unanchored workspace/ ignore rule that hides web-shell sources

The bare `workspace/` line under the brand-builder section matches every
directory named workspace at any depth, including the tracked source tree
packages/web-shell/client/daemon/workspace/. Its 34 files are tracked but
ignored, so a new file there never shows in git status and git add -A
skips it silently (a test in #13154 was nearly left out this way).

Nothing in the repo creates a workspace/ directory: the desktop brand
builder writes to brand-builds/, which stays ignored. The line arrived in
a squashed history import (99fd76553e), so its original intent cannot be
recovered from git.

* style(web-shell): format the two daemon/workspace tests prettier never saw

Prettier honours .gitignore, so the old bare `workspace/` rule also kept
packages/web-shell/client/daemon/workspace/ out of the formatting gate.
With the rule gone the gate checks the directory and flags these two
files; this is prettier --write output only.
This commit is contained in:
易良 2026-10-02 03:34:00 +00:00 • committed by GitHub
parent 8eaaa1355c
commit 47463b79a7
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
3 changed files with 12 additions and 7 deletions

1
.gitignore vendored
View file

@ -147,7 +147,6 @@ tmp/
# Brand build workspaces (created by the desktop-brand-builder skill)
brand-builds/
workspace/
# Dependencies install with pnpm from pnpm-lock.yaml; keep an npm install
# from bringing the retired root lockfile back.

View file

@ -872,7 +872,10 @@ describe('DaemonWorkspaceProvider', () => {
const root = createRoot(container);
await act(async () => {
root.render(
<DaemonWorkspaceProvider baseUrl="http://127.0.0.1:4170" token="token-a">
<DaemonWorkspaceProvider
baseUrl="http://127.0.0.1:4170"
token="token-a"
>
<Harness />
</DaemonWorkspaceProvider>,
);
@ -884,7 +887,10 @@ describe('DaemonWorkspaceProvider', () => {
await act(async () => {
root.render(
<DaemonWorkspaceProvider baseUrl="http://127.0.0.1:4170" token="token-b">
<DaemonWorkspaceProvider
baseUrl="http://127.0.0.1:4170"
token="token-b"
>
<Harness />
</DaemonWorkspaceProvider>,
);
@ -960,7 +966,7 @@ describe('DaemonWorkspaceProvider', () => {
container.remove();
});
it('never publishes the previous client\'s brand on the re-point commit', async () => {
it("never publishes the previous client's brand on the re-point commit", async () => {
// The reset lives in the render that observes the client change, so no
// committed frame may carry daemon A's brand beside daemon B's baseUrl —
// a consumer effect keyed on baseUrl must see the reset state.

View file

@ -425,9 +425,9 @@ describe('useDaemonSkills', () => {
await act(async () => vi.advanceTimersByTimeAsync(5_000));
expect(
mocks.workspaceClient.workspaceRuntimeSkills,
).toHaveBeenCalledTimes(2);
expect(mocks.workspaceClient.workspaceRuntimeSkills).toHaveBeenCalledTimes(
2,
);
expect(result?.skills.map((skill) => skill.name)).toEqual([
'configured',
'runtime-only',