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

1.3 KiB

Manual QA — NEO-38 (skill XP grant)

Reference: implementation plan, server README.

Preconditions

  • Run NeonSprawl.Server from server/NeonSprawl.Server (dotnet run; default http://localhost:5253).
  • Use a known player id (e.g. dev-local-1, present in position state).

Happy path — grant + read back

  1. POST /game/players/dev-local-1/skill-progression with JSON:
    • schemaVersion 1
    • skillId salvage
    • amount 10
    • sourceKind activity
  2. Expect HTTP 200, body granted true, progression.skills contains salvage with increased xp vs a prior GET.
  3. GET /game/players/dev-local-1/skill-progressionsalvage.xp matches the POST progression.

Deny — source not allowed

  1. POST same path with skillId salvage, sourceKind trainer (not in prototype catalog for salvage).
  2. Expect HTTP 200, granted false, reasonCode source_kind_not_allowed, and progression still present.

Bruno

  • Folder: bruno/neon-sprawl-server/skill-progression/
  • Post skill progression grant.bru — happy grant.
  • Get skill progression.bru — confirms read model after grants.