@@ -502,6 +502,30 @@ Boundary rules:
502502- shared runtime behavior must not leak through tool-specific abstractions
503503- tool-specific adapters may wrap stable engine contracts only when the adapter does not own engine behavior
504504
505+ Engine growth governance:
506+ - the engine is a living shared foundation and is expected to grow when reusable runtime behavior is needed
507+ - reusable runtime behavior belongs in the engine, not duplicated in games, samples, or tools
508+ - games, samples, and tools must not override, hide, shadow, or reimplement behavior that already exists in the engine
509+ - games, samples, and tools must not implement behavior that clearly belongs in the engine just to avoid engine changes
510+
511+ Engine growth decision rule:
512+ - when a game, sample, or tool needs runtime behavior that appears reusable, Codex must identify whether it belongs in the engine
513+ - if engine work is required, Codex must state that clearly and include the engine change in the PR scope when authorized
514+ - if engine work is not included, Codex must document why the behavior is intentionally local
515+ - local implementation is allowed only when the behavior is truly game-specific, tool-specific, or sample-specific and not reusable engine behavior
516+
517+ Prohibited no-shadow behaviors:
518+ - local engine-like fallbacks
519+ - duplicate render, input, audio, physics, asset, timing, or parser logic
520+ - wrapper code that hides missing engine capability
521+ - tool, game, or sample custom behavior that masks an engine gap
522+ - shadow APIs that compete with engine APIs
523+
524+ Engine growth enforcement:
525+ - if the correct fix requires adding or updating the engine, Codex must do so when the PR scope allows it
526+ - if PR scope does not allow engine changes, Codex must report the required engine follow-up instead of creating a local workaround
527+ - engine growth should be deliberate, reviewed, and validated through engine-impact testing
528+
505529Shared infrastructure rules:
506530- allowed shared infrastructure layers are engine/runtime services, shared manifest/runtime parsers, shared asset/input/audio/rendering helpers, shared validation helpers, and reusable non-tool-specific utilities
507531- circular dependencies between engine/shared infrastructure and tools are prohibited
0 commit comments