Skip to content

Commit 7cb023f

Browse files
author
DavidQ
committed
Remove engine domain index barrel exports phase 4 - PR_26140_070-remove-engine-domain-index-barrels-phase4
1 parent bd06624 commit 7cb023f

84 files changed

Lines changed: 189 additions & 209 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
Lines changed: 66 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,66 @@
1+
# PR_26140_070 Engine Domain Index Barrel Removal Phase 4
2+
3+
## Summary
4+
- Removed the targeted phase 4 engine domain barrel files:
5+
- `src/engine/assets/index.js`
6+
- `src/engine/audio/index.js`
7+
- `src/engine/persistence/index.js`
8+
- `src/engine/release/index.js`
9+
- `src/engine/replay/index.js`
10+
- `src/engine/security/index.js`
11+
- `src/engine/ui/index.js`
12+
- Replaced active imports from those barrels with direct canonical file imports.
13+
- Kept edits import-only for consumers. No runtime logic, sample JSON, game/sample entry removal, replacement barrels, or pass-through shims were added.
14+
- No edits were made under `src/engine/debug/**`, `src/engine/network/**`, or `src/engine/systems/**`.
15+
- `src/engine/core/index.js` remains untouched in this PR.
16+
- `src/engine/core/Engine.js` received required import-only updates from the audio and release barrels.
17+
- `src/engine/release/CrashRecoveryManager.js` and `src/engine/release/SettingsSystem.js` received required import-only updates from the persistence barrel.
18+
- `src/shared/debug/config.js` and `src/tools/common/GameManifestLoader.js` received required import-only updates so no active target barrel imports remain.
19+
20+
## Direct Import Mapping
21+
- Assets:
22+
- `AssetRegistry` -> `src/engine/assets/AssetRegistry.js`
23+
- `SpriteAtlas` -> `src/engine/assets/SpriteAtlas.js`
24+
- `ImageAssetLoader` -> `src/engine/assets/ImageAssetLoader.js`
25+
- `AssetLoaderSystem` -> `src/engine/assets/AssetLoaderSystem.js`
26+
- `AssetOptimizer` -> `src/engine/assets/AssetOptimizer.js`
27+
- Audio:
28+
- audio service/classes -> their one-class files under `src/engine/audio/`
29+
- Persistence:
30+
- storage service/classes -> their one-class files under `src/engine/persistence/`
31+
- file read/write/download helpers -> `src/engine/persistence/FilePersistenceService.js`
32+
- compression helpers -> `src/engine/persistence/CompressionService.js`
33+
- world serialization helpers -> `src/engine/persistence/WorldSerializer.js`
34+
- Release:
35+
- release service/classes -> their one-class files under `src/engine/release/`
36+
- Replay:
37+
- `ReplaySystem` -> `src/engine/replay/ReplaySystem.js`
38+
- `ReplayTimeline` -> `src/engine/replay/ReplayTimeline.js`
39+
- replay model helpers -> `src/engine/replay/ReplayModel.js`
40+
- Security:
41+
- security service/classes -> their one-class files under `src/engine/security/`
42+
- UI:
43+
- `UIFramework` -> `src/engine/ui/UIFramework.js`
44+
- canvas dialog helpers -> `src/engine/ui/CanvasDialogPrimitives.js`
45+
- canvas popup interaction helpers -> `src/engine/ui/CanvasPopupInteractions.js`
46+
- canvas popup state helpers -> `src/engine/ui/CanvasPopupState.js`
47+
48+
## Validation
49+
- PASS: target barrel scan reports `NO_TARGET_BARREL_IMPORTS`.
50+
- PASS: target deletion scan confirms all seven targeted `index.js` files no longer exist.
51+
- PASS: no JSON files changed.
52+
- PASS: `node --check` passed for 76 changed existing JS/MJS files.
53+
- PASS: local import target validation passed for 76 changed existing JS/MJS files.
54+
- PASS: `npm run test:workspace-v2` passed 59/59 tests.
55+
- PASS: targeted affected domain tests passed:
56+
- `tests/audio/AudioService.test.mjs`
57+
- `tests/core/EngineCoreBoundaryBaseline.test.mjs`
58+
- `tests/final/EditorAutomationSecurityPipeline.test.mjs`
59+
- `tests/final/FinalSystems.test.mjs`
60+
- `tests/final/PlatformUxSystems.test.mjs`
61+
- `tests/final/ReleaseReadinessSystems.test.mjs`
62+
- `tests/persistence/StorageService.test.mjs`
63+
- `tests/replay/ReplaySystem.test.mjs`
64+
- `tests/replay/ReplayTimeline.test.mjs`
65+
- PASS: `git diff --check` exited 0.
66+
- SKIPPED: full samples smoke test, per PR instruction.

games/Asteroids/systems/AsteroidsAudio.js

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,9 @@ David Quesenberry
44
03/22/2026
55
AsteroidsAudio.js
66
*/
7-
import { GaplessLoopPlayer, HtmlAudioMediaBackend, MediaTrackService } from '/src/engine/audio/index.js';
7+
import GaplessLoopPlayer from '/src/engine/audio/GaplessLoopPlayer.js';
8+
import HtmlAudioMediaBackend from '/src/engine/audio/HtmlAudioMediaBackend.js';
9+
import MediaTrackService from '/src/engine/audio/MediaTrackService.js';
810
import { resolveWorkspaceGameAssetPath } from '../../shared/workspaceGameAssetCatalog.js';
911

1012
const ASTEROIDS_GAME_ID = "Asteroids";

games/Asteroids/systems/AsteroidsHighScoreService.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ David Quesenberry
44
03/25/2026
55
AsteroidsHighScoreService.js
66
*/
7-
import { StorageService } from '/src/engine/persistence/index.js';
7+
import StorageService from '/src/engine/persistence/StorageService.js';
88
import {
99
sanitizeScore,
1010
sanitizeInitials,

games/Asteroids/systems/HighScoreStore.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ David Quesenberry
44
03/22/2026
55
HighScoreStore.js
66
*/
7-
import { StorageService } from '/src/engine/persistence/index.js';
7+
import StorageService from '/src/engine/persistence/StorageService.js';
88

99
function toSafeScore(value) {
1010
if (!Number.isFinite(value)) {

games/GravityWell/game/GravityWellScene.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ import { Theme } from '/src/engine/theme/Theme.js';
99
import { ThemeTokens } from '/src/engine/theme/ThemeTokens.js';
1010
import { drawPanel } from '/src/engine/debug/index.js';
1111
import { drawVectorShape } from '/src/engine/rendering/VectorDrawing.js';
12-
import { ReplaySystem } from '/src/engine/replay/index.js';
12+
import ReplaySystem from '/src/engine/replay/ReplaySystem.js';
1313
import GravityWellWorld from './GravityWellWorld.js';
1414

1515
const theme = new Theme(ThemeTokens);

games/SpaceDuel/game/SpaceDuelHighScoreService.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ David Quesenberry
44
03/25/2026
55
SpaceDuelHighScoreService.js
66
*/
7-
import { StorageService } from '/src/engine/persistence/index.js';
7+
import StorageService from '/src/engine/persistence/StorageService.js';
88
import {
99
sanitizeScore,
1010
sanitizeInitials,

games/SpaceInvaders/game/SpaceInvadersHighScoreService.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ David Quesenberry
44
03/25/2026
55
SpaceInvadersHighScoreService.js
66
*/
7-
import { StorageService } from '/src/engine/persistence/index.js';
7+
import StorageService from '/src/engine/persistence/StorageService.js';
88
import {
99
sanitizeScore,
1010
sanitizeInitials,

samples/phase-02/0204/AssetRegistryScene.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ import { Scene } from '/src/engine/scene/index.js';
88
import { Theme } from '/src/engine/theme/Theme.js';
99
import { ThemeTokens } from '/src/engine/theme/ThemeTokens.js';
1010
import { drawFrame, drawPanel } from '/src/engine/debug/index.js';
11-
import { AssetRegistry } from '/src/engine/assets/index.js';
11+
import AssetRegistry from '/src/engine/assets/AssetRegistry.js';
1212

1313
const theme = new Theme(ThemeTokens);
1414

samples/phase-02/0205/SaveLoadStateScene.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ import { Theme } from '/src/engine/theme/Theme.js';
99
import { ThemeTokens } from '/src/engine/theme/ThemeTokens.js';
1010
import { clamp } from '/src/shared/math/scalars.js';
1111
import { drawFrame, drawPanel } from '/src/engine/debug/index.js';
12-
import { StorageService } from '/src/engine/persistence/index.js';
12+
import StorageService from '/src/engine/persistence/StorageService.js';
1313

1414
const theme = new Theme(ThemeTokens);
1515
const STORAGE_KEY = 'engine-v2-Sample 0205-state';

samples/phase-02/0219/SpriteAtlasImageRenderingScene.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,8 @@ import { Theme } from '/src/engine/theme/Theme.js';
99
import { ThemeTokens } from '/src/engine/theme/ThemeTokens.js';
1010
import { drawFrame, drawPanel } from '/src/engine/debug/index.js';
1111
import { renderSpriteReadyEntities } from '/src/engine/rendering/index.js';
12-
import { SpriteAtlas, ImageAssetLoader } from '/src/engine/assets/index.js';
12+
import SpriteAtlas from '/src/engine/assets/SpriteAtlas.js';
13+
import ImageAssetLoader from '/src/engine/assets/ImageAssetLoader.js';
1314
import { drawSpriteProjectFrame, loadSpriteProjectPreset } from '/samples/shared/spritePresetRuntime.js';
1415

1516
const theme = new Theme(ThemeTokens);

0 commit comments

Comments
 (0)