2.0 KiB
2.0 KiB
Manual QA — NEO-56 (inventory telemetry hook sites)
Reference: implementation plan, NEO-54 implementation plan (inventory engine), NEO-55 implementation plan (inventory HTTP).
Preconditions
- Run
NeonSprawl.Server(dotnet runfromserver/NeonSprawl.Server; defaulthttp://localhost:5253) if exercising Bruno; not required for code review only. - This story adds comments only; inventory behavior matches NEO-54/NEO-55.
Code review check
- Open
server/NeonSprawl.Server/Game/Items/PlayerInventoryOperations.cs. TryAddStack: confirmitem_createdcomment block immediately beforeAppliedreturn (successful add only).TryAddStack/TryRemoveStack: confirminventory_transfer_deniedhook on post-mutationDeniedreturns (inventory_full,insufficient_quantity).Deny: confirminventory_transfer_deniedhook covers early validation denies (invalid_quantity,invalid_item).- Confirm
TODO(E9.M1)markers and planned payload fields; no newILoggeror metrics calls. - Confirm no duplicate hook comments in
PlayerInventoryApi.cs. - Open
PlayerInventoryReasonCodes.cs— summary cross-references NEO-56 hook anchor. - Open server README — Player inventory (NEO-54 store, NEO-55 HTTP) — NEO-56 telemetry subsection present.
Regression (optional)
cd server && dotnet test NeonSprawl.sln
Expect all tests pass (comments-only change).
Bruno (optional sanity)
From bruno/neon-sprawl-server/inventory/ against a running server:
- Get inventory — 200 empty grid for
dev-local-1. - Post inventory add —
applied: trueunchanged. - Post inventory add deny invalid item —
applied: false,reasonCode: invalid_itemunchanged.