diff --git a/packages/lint/src/validate-jsx-pages.production-witness.test.ts b/packages/lint/src/validate-jsx-pages.production-witness.test.ts index 0e62b6e20b0..958bc364014 100644 --- a/packages/lint/src/validate-jsx-pages.production-witness.test.ts +++ b/packages/lint/src/validate-jsx-pages.production-witness.test.ts @@ -58,7 +58,12 @@ describe('production witness: the checked-in manifest reaches validateTree', () // regeneration legitimately changes them, re-check the shipped pages in the // same PR. expect(keys).toContain('flex'); - expect(keys).toContain('html'); + // The html tier's intrinsic tags. The raw `html` component itself was + // retired by objectui#13449 and left the manifest when it was regenerated + // from the in-tree ui/ (107 -> 106, objectstack#25711); the shipped pages + // below never used it, which the clean-run witness re-checks. + expect(keys).toContain('a'); + expect(keys).toContain('p'); expect(keys).not.toContain('div'); }); diff --git a/ui/packages/cli/src/__tests__/app-generator.test.ts b/ui/packages/cli/src/__tests__/app-generator.test.ts index 8dae097b3ea..3b2a8b1b637 100644 --- a/ui/packages/cli/src/__tests__/app-generator.test.ts +++ b/ui/packages/cli/src/__tests__/app-generator.test.ts @@ -80,6 +80,7 @@ import { type AppGeneratorContext, type RouteInfo } from '../utils/app-generator.js'; +import { changesetConfigPath } from '../../../../scripts/workspace-root.mjs'; const __dirname = dirname(fileURLToPath(import.meta.url)); /** packages/cli/src/__tests__ -> repo root */ @@ -741,8 +742,10 @@ describe('generated app manifests', () => { // current and guaranteed to exist on the registry. If that group were ever // split, deriving the range would silently start naming versions that were // never published — so the premise is asserted, not assumed. + // The tree's own config standalone, the monorepo root's when nested under + // objectstack's `ui/` (objectstack#25711): changesets reads one per repository. const changesetConfig = JSON.parse( - readFileSync(resolve(REPO_ROOT, '.changeset/config.json'), 'utf-8') + readFileSync(changesetConfigPath(REPO_ROOT), 'utf-8') ) as { fixed?: string[][] }; const cliVersion = readManifest(CLI_MANIFEST_PATH).version as string; const platformPackages = Object.entries(DEPENDENCY_ANCHORS) diff --git a/ui/scripts/check-test-path-roots.mjs b/ui/scripts/check-test-path-roots.mjs index f1dda19f1a7..e52391f02ef 100644 --- a/ui/scripts/check-test-path-roots.mjs +++ b/ui/scripts/check-test-path-roots.mjs @@ -187,7 +187,7 @@ const FS_MODULES = new Set(['fs', 'node:fs', 'fs/promises', 'node:fs/promises', * what it excuses. */ export const SUBJECT_IS_THE_CWD = Object.freeze([ - 'packages/cli/src/__tests__/app-generator.test.ts:1326 -- `contextOfCurrentProcess()` mirrors the ambient cwd on BOTH sides of the assertion deliberately: the writer under test derives its context from `process.cwd()` and the expectation derives it the same way, so the pair is self-consistent under either cwd. Re-rooting one side desyncs the mirror and turns a passing test red. The real cost -- that WHICH generator branch those two cases pin is decided by the launch directory -- is filed as objectui#7807 and is closed in the same file by two further cases that name their branch instead of inheriting it.', + 'packages/cli/src/__tests__/app-generator.test.ts:1329 -- `contextOfCurrentProcess()` mirrors the ambient cwd on BOTH sides of the assertion deliberately: the writer under test derives its context from `process.cwd()` and the expectation derives it the same way, so the pair is self-consistent under either cwd. Re-rooting one side desyncs the mirror and turns a passing test red. The real cost -- that WHICH generator branch those two cases pin is decided by the launch directory -- is filed as objectui#7807 and is closed in the same file by two further cases that name their branch instead of inheriting it.', ]); /**