Repository navigation
feat(tooling): copy example games from the examples repository and keep only test games - #295
Merged
Merged
Conversation
…ixture, on engine 3 packages
…le from setup:engine
…or coverage cache Also restores the release-age exclusions of main.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What does this PR do?
Closes #289
Refs #291 (breakout now gets CLI 3.0.1 from the engine's e2e game, but
NANOFORGE_CLIis still not linked into it)Example games now live in the examples repository (NanoForge-dev/examples
feat/centralize-games). Only test games stay here, and the editor no longer reads the engine's removedexample/folder.examples/breakout→plugins/scene/test/fixtures/breakout(frozen: the scene goldens andscene.spec.tspin its text).examples/keeps onlycounter-plugin.packages/server-core/test/fixtures/game: the engine's pong-network at 3.0.0, frozen, as the e2egame. The e2e prep andsetup-checktakenode_modulesfrom<engine>/e2e/game; the engine pin moves toed8c7e0(engine 3.0.0). Fixtures on engine ^3.0.0 and CLI/config ^3.0.1.pnpm examples(scripts/examples.mjs): copies chosen games from a local examples checkout (--from,NANOFORGE_EXAMPLES,../examples, or asked for;@inquirer/promptscheckbox, or--games/--all) into the gitignored.examples/, installs each copy, optionally links a local engine (--engine).pnpm example <name>opens a copy in the built editor (port 4800).apps/editor/test/examples/editor-native.spec.ts: runs the ECS and scene analyzers over every copied game and fails on what the editor can't model; skipped when.examples/is empty.games/breakout).How do you test this PR?
Run on
HEAD:pnpm build17/17,pnpm lint29/29,pnpm typecheck41/41,CHROME=… pnpm test(editor-native spec 4/4 on breakout, input-keyboard, network, raid-survival; it fails on a seeded file with no item), full e2e "109 passed" withE2E_REQUIRE_ENGINE=1, runtime/scene/tutorial/console 13 passed on pined8c7e0.pnpm install --frozen-lockfilepasses. Examples checkoutgit statusunchanged after copying.Merge danger
Two-way door: tooling, fixtures and docs; no published package or API change.
apps/editordeploys on merge (ADR 0006) but no runtime code changed. Merge after NanoForge-dev/examplesfeat/centralize-games(the docs andpnpm examplesexpect its layout), together with NanoForge-dev/Enginefeat/examples-games.Follow-up issues
Quality gate
test:coverage, release-age exclusions restored).dataname)srcimports and the new@inquirer/promptsdependency