Repository navigation
fix(world): remove motion after cross-map teleport - #438
Conversation
|
Important Review skippedNo new commits to review since the last review. ⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Advanced Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Advanced Run ID: 📒 Files selected for processing (2)
Included review availability: Your plan provides up to 10 included reviews per hour; 6 remain after this review. 📝 WalkthroughWalkthroughCross-map teleport now deletes the source entity’s public motion row before entity removal. An ignored integration test verifies motion publication, same-map retention, and cross-map cleanup of public and pending motion rows. ChangesTeleport motion cleanup
Estimated code review effort: 2 (Simple) | ~10 minutes Merge Risk: ⚪ Minimal · up to Cross-map teleports now clean up the departing entity’s public motion row along with existing entity teardown, preventing stale source-shard motion records. The change is ready to merge. 🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
✨ Finishing Touches 💡 1📝 Generate docstrings 💡
🧪 Generate unit tests (beta)
Comment |
875a2ab to
97ea5b2
Compare
97ea5b2 to
0734b3b
Compare
|
Current-head review on
The gateway run passed 1,298 tests and hit one local filesystem-permission failure in |
|
@coderabbitai review |
|
A cross-map teleport deleted the live world entity but left its public motion row on the source Shard. Nearby subscriptions could continue to match that orphan row after the Character had departed.
Delete the public motion row in the cross-map branch of
teleport_player. A Standalone integration test now drives movement and teleport reducers against a fresh database. It verifies that same-map teleports preserve motion while cross-map teleports remove the live entity, public motion, and pending motion in one transition.Closes #80.
Verification:
cargo test -p lyracore-module --test teleport_motion teleport_motion_rows_follow_the_live_entity_boundary -- --ignored --nocapturecargo test -p lyracore-modulecargo test -p lyracore-module --lib --features=debug_reducers./lyracore preflightBefore the fix, the integration test found one public motion row after the cross-map teleport. Remaining verification gaps: none for this Module state transition; the test observes committed rows through the real reducers on an isolated SpacetimeDB Standalone.
Implemented by GPT-5.6 Sol through the Codex harness.
Summary by CodeRabbit