| name | physics-parity-worker |
| description | Implement hurtbox, hurt-state, collision, and bounds parity for the shared runtime. |
Physics Parity Worker
NOTE: Startup and cleanup are handled by worker-base. This skill defines the WORK PROCEDURE.
When to Use This Skill
Use for hurtbox overrides, hurt-state ladders, wall slam/bounce, grounded versus aerial recovery, body collision, wall/bounds handling, and related mirrored physics/parity work.
Required Skills
None.
Work Procedure
- Read the feature, relevant contract assertions, and the worker-facing architecture docs.
- Inspect authoritative Godot files for the exact physics/hurt behavior first, then inspect Python runtime/tests.
- Add failing targeted tests first. Prefer scenarios that isolate the hurtbox or physics edge case being ported. Ensure every assertion in the feature's
fulfills list has at least one direct test assertion or fixture expectation.
- Implement source-backed runtime changes in the correct ownership layer: hurtbox definitions/data, hurt states, or shared collision/bounds resolution.
- Add at least one mirrored or boundary-focused deterministic sanity check and record it in
interactiveChecks.
- Run targeted tests until stable, then the manifest validators.
- In the handoff, call out any newly discovered edge cases that still need later milestone coverage.
Example Handoff
{
"salientSummary": "Implemented wall-slam progression and boundary-aware hurt-state routing, then tightened body-collision bounds behavior. Added targeted wall/bounds regression tests and kept the full suite green.",
"whatWasImplemented": "Updated hurt-state progression so launch, wall slam, bounce, knockdown, and landing-family followups follow authored routing and duration rules; also fixed collision/bounds resolution to clamp by body bounds and preserve deterministic separation order.",
"whatWasLeftUndone": "",
"verification": {
"commandsRun": [
{
"command": "uv run pytest tests/test_common_states.py tests/test_simulation.py -k 'hurt or wallslam or bounce' -v",
"exitCode": 0,
"observation": "New hurt-state ladder tests passed."
},
{
"command": "uv run pytest tests/test_base_obj.py tests/test_fighter.py -k 'collision or bounds or wall' -v",
"exitCode": 0,
"observation": "Collision and bounds regressions passed."
},
{
"command": "uv run pytest tests/ -v",
"exitCode": 0,
"observation": "Full suite remained green."
}
],
"interactiveChecks": [
{
"action": "Ran a mirrored wall-impact harness with left/right wall contact and compared the resulting recovery traces.",
"observed": "Entry clamp, downstream hurt-state choice, and post-impact positions matched after mirroring back."
}
]
},
"tests": {
"added": [
{
"file": "tests/test_common_states.py",
"cases": [
{
"name": "test_wallslam_routes_to_authored_followup_once",
"verifies": "Wall slam uses the authored hurt-state ladder."
}
]
}
]
},
"discoveredIssues": []
}
When to Return to Orchestrator
- Godot and Python representations of the same hurtbox/physics rule diverge so much that a local feature fix would be misleading.
- The feature needs a broader object/runtime refactor outside the assigned phase boundary.
- Existing parity fixtures are insufficient and would require a larger signoff-surface change than the assigned feature allows.