Skip to content

refactor(site): move the remaining site files no pending change touches into their owner folders - #1355

Merged
apresmoi merged 1 commit into
mainfrom
untangle7/s4-2-moves
Oct 5, 2026
Merged

apresmoi merged 1 commit into
mainfrom
untangle7/s4-2-moves

Conversation

@apresmoi

@apresmoi apresmoi commented Oct 5, 2026 •

Copy link
Copy Markdown
Contributor

What changed

  • Second S4 pull request: 33 files move into their owner folders with apply-moves.mts (3 source files and 30 tests), using the map in .github/site-refactor.json. Root files in site/, tracked: 100 to 93 in total, 60 to 57 without tests.
  • The moved sources are prepared-arrival.mts, moon-catalogue.mts and surrounded-body.mts. surrounded-body.mts was new on main and had no destination, so it is assigned to world/ with its test. The tests move with their subjects or, for the old site/test/ files, into the folder of the code they cover.
  • Imports, new URL(...) literals, docs links, code spans, the coverage ratchet floors and ci-areas.json follow the moves. moves.json loses the applied entries, tiers.json follows its paths, the tables are regenerated, and the architecture baseline is unchanged.
  • Four computed or finite reads in moved tests were stated explicitly by hand because the codemod refuses to rewrite them (compact-spectrum, satellite-arrival-framing, scene-contract, system-view-file); each moves at the same depth, so the path text is unchanged.
  • Not moved, and why:
    • site/object-shell.css and site/components/ObjectSwatchStyles.astro: a constant data-object-style identifier keeps the emitted HTML byte-identical, but the pure-move comparison renames every moved path literal in the base modules, so three prerender modules (ObjectPage.astro, object-page-contract.mts, ObjectSwatchStyles.astro) differ and L3 fails. They need a semantic-mode change or a comparison exemption for the identifier.
    • site/startup-world.mts: the server bundle keeps its relative new URL('../src/...') literal, so any depth change changes the emitted bytes.
    • Files that a pending S3 change edits (held address, loaders) and everything that imports them through a root file: moving them would close a folder cycle the baseline does not record. This includes objects.mts, world-context-plan.mts, application-world-*, scene-selection, showcase, the browsers, and the files that import a generated site/prepared-* file at the root.
    • The four tracked .d.mts stand-ins, the generated site/prepared-* files and dot-catalogue-data.mts (it reads a generated root file).

Checks

Local comparison lane against main 475bc80 (production ASSET_ORIGIN builds, merge-base tools):

  • L3 built-site comparison, pure-move mode: 0 differences, semantic and layout equality both hold, pages and files unchanged.
  • L2 server answers: preview 353, netlify 351 and cloudflare 348 answers identical.
  • L7 counted performance guard: pass, 0 findings.

Other checks:

  • pnpm check:architecture (baseline unchanged), site-architecture.mts --write tables match.
  • pnpm typecheck and pnpm lint (0 errors).
  • pnpm test:site: 1,788 tests, 1,756 pass, 32 skipped, 0 failures.

Follows the PR rules.

@apresmoi
apresmoi force-pushed the untangle7/s4-2-moves branch from 01f69ce to fd9863e Compare October 5, 2026 22:01
@apresmoi
apresmoi force-pushed the untangle7/s4-2-moves branch from 3ad1f3a to ff9df40 Compare October 5, 2026 22:41
@apresmoi
apresmoi merged commit 5056584 into main Oct 5, 2026
21 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant