neon-sprawl/docs/manual-qa/NEO-27.md

1.6 KiB

NEO-27 — Manual QA checklist

Story: NEO-27
Plan: docs/plans/NEO-27-implementation-plan.md

Preconditions

  • Game server running (server/NeonSprawl.Server).
  • Godot client opens client/project.godot and runs scenes/main.tscn.
  • In the scene, TargetSelectionClient.log_selection_events is enabled (true).

Checks

  • target_changed dev token appears on lock transition

    • Press Tab to acquire a target lock or switch lock ids.
    • Verify Godot Output prints a line prefixed with [TargetSelectionClient] target_changed.
    • Confirm payload includes previous, next, cause, and sequence.
  • No target_changed log on validity-only updates

    • Hold a lock, move to force validity changes (okout_of_range) without lock-id change.
    • Verify target_state_changed behavior remains, and no new target_changed log is printed for id-unchanged refreshes.
  • Ability telemetry reserves are documented (not implemented)

    • Confirm comment block exists in client/scripts/main.gd naming ability_cast_requested and ability_cast_denied.
    • Confirm comments include TODO(E9.M1) and reference E1.M4/E5.M1 as future wiring points.

Expected outcome

  • Slice 3 telemetry hook names are explicitly present in code/docs:
    • Active hook mapping: target_changed.
    • Reserved hook names: ability_cast_requested, ability_cast_denied.
  • No production telemetry pipeline is introduced in this story.