diff --git a/.agents/docs/README.md b/.agents/docs/README.md index 554807d..1323cf5 100644 --- a/.agents/docs/README.md +++ b/.agents/docs/README.md @@ -12,4 +12,4 @@ - [API query code generation](api-codegen-query.md) — query-specific generation guidance for the agreed selective-query API shape; implementation and release remain performance-gated. - [@taffyjs/node decisions](taffyjs-node-decisions.md) — vouched choices for the Node binding's role, API priorities, module format, distribution, and testing strategy. - [@taffyjs/wasm package design](taffyjs-wasm-package.md) — vouched public contract, artifact layout, initialization model, ownership boundary, and verification requirements for the explicit Wasm package. -- [Tooling decisions](tooling-decisions.md) — vouched rulings for the repository-wide TypeScript default, JavaScript package builds, repository command orchestration, tool ownership, and demand-driven API code generation. +- [Tooling decisions](tooling-decisions.md) — vouched rulings for test workspace package naming, the repository-wide TypeScript default, JavaScript package builds, repository command orchestration, tool ownership, and demand-driven API code generation. diff --git a/.agents/docs/tooling-decisions.md b/.agents/docs/tooling-decisions.md index 6073f13..43c64e1 100644 --- a/.agents/docs/tooling-decisions.md +++ b/.agents/docs/tooling-decisions.md @@ -4,6 +4,18 @@ This ledger records only tooling judgments that Yunfei explicitly expressed for ## Decided +### Direct names for top-level test packages + +[VOUCHED @hyfdev 2026-08-16] + +**Ruling:** Every workspace package directly under the repository's top-level `tests/` directory must use an unscoped name formed by appending its corresponding identifier to `tests-taffy-`. Identifiers such as `node`, `wasm`, `yoga`, and `yoga-wasm` therefore produce names such as `tests-taffy-node`, `tests-taffy-wasm`, `tests-taffy-yoga`, and `tests-taffy-yoga-wasm`. + +**Limits:** This governs test workspace package names and every task selector that refers to them. It does not rename their directories, public `@taffyjs/*` packages, or projects nested below a top-level test package. + +**Why:** Yunfei preferred the direct `tests-taffy-` convention over scoped names ending in `integration-tests`; no additional rationale was given. + +**Source:** Yunfei (`@hyfdev`), 2026-08-16; explicitly chose `tests-taffy-node`, extended that pattern to every package directly under top-level `tests/`, clarified that the suffix is the corresponding identifier rather than an abstract target, and asked to vouch the decision. + ### Repository-wide TypeScript default [VOUCHED @hyfdev 2026-08-16] diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 8cb7d6a..1deec46 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -59,7 +59,7 @@ jobs: targets: wasm32-wasip1 - run: pnpm install --frozen-lockfile - name: Install the browser used by the Wasm runtime test - run: pnpm --filter @taffyjs/wasm-integration-tests exec playwright install --with-deps chromium + run: pnpm --filter tests-taffy-wasm exec playwright install --with-deps chromium - name: Build and test the Wasm package run: pnpm exec vp run check:wasm diff --git a/tests/taffyjs-node/package.json b/tests/taffyjs-node/package.json index 9d1d90d..7c3e101 100644 --- a/tests/taffyjs-node/package.json +++ b/tests/taffyjs-node/package.json @@ -1,5 +1,5 @@ { - "name": "@taffyjs/node-integration-tests", + "name": "tests-taffy-node", "version": "0.0.0", "private": true, "type": "module", diff --git a/tests/taffyjs-wasm/package.json b/tests/taffyjs-wasm/package.json index cf27451..ea218e3 100644 --- a/tests/taffyjs-wasm/package.json +++ b/tests/taffyjs-wasm/package.json @@ -1,5 +1,5 @@ { - "name": "@taffyjs/wasm-integration-tests", + "name": "tests-taffy-wasm", "version": "0.0.0", "private": true, "type": "module", diff --git a/vite.config.ts b/vite.config.ts index 9a844b2..cdffd97 100644 --- a/vite.config.ts +++ b/vite.config.ts @@ -10,7 +10,7 @@ const testTasks = { dependsOn: ["build"], }, "check:test:integration": { - command: "vp run @taffyjs/node-integration-tests#test", + command: "vp run tests-taffy-node#test", dependsOn: ["build"], }, "check:test:types": { @@ -21,31 +21,31 @@ const testTasks = { const wasmTasks = { "check:wasm:api": { - command: "vp run @taffyjs/wasm-integration-tests#test:api", + command: "vp run tests-taffy-wasm#test:api", dependsOn: ["build:wasm"], }, "check:wasm:packed-consumers": { - command: "vp run @taffyjs/wasm-integration-tests#test:packed", + command: "vp run tests-taffy-wasm#test:packed", dependsOn: ["build:wasm"], }, "check:wasm:types": { - command: "vp run @taffyjs/wasm-integration-tests#check:types", + command: "vp run tests-taffy-wasm#check:types", dependsOn: ["build:wasm"], }, "check:wasm:package": { - command: "vp run @taffyjs/wasm-integration-tests#check:package", + command: "vp run tests-taffy-wasm#check:package", dependsOn: ["build:wasm"], }, "check:wasm:browser-runtime": { - command: "vp run @taffyjs/wasm-integration-tests#test:browser", + command: "vp run tests-taffy-wasm#test:browser", dependsOn: ["build:wasm"], }, "build:wasm:browser-consumer": { - command: "vp run @taffyjs/wasm-integration-tests#build:browser", + command: "vp run tests-taffy-wasm#build:browser", dependsOn: ["build:wasm"], }, "check:wasm:browser-bundle": { - command: "vp run @taffyjs/wasm-integration-tests#check:browser-bundle", + command: "vp run tests-taffy-wasm#check:browser-bundle", dependsOn: ["build:wasm:browser-consumer"], }, };