35 lines
2.0 KiB
Markdown
35 lines
2.0 KiB
Markdown
# Manual QA — NEO-141 (faction telemetry hook sites)
|
|
|
|
Reference: [implementation plan](../plans/NEO-141-implementation-plan.md), [NEO-136 implementation plan](../plans/NEO-136-implementation-plan.md) (reputation ops), [NEO-137 implementation plan](../plans/NEO-137-implementation-plan.md) (gate ops).
|
|
|
|
## Preconditions
|
|
|
|
- Run `NeonSprawl.Server` (`dotnet run` from `server/NeonSprawl.Server`; default `http://localhost:5253`) if exercising Bruno; not required for code review only.
|
|
- This story adds **comments only**; faction standing, gate eval, and reward delivery behavior match NEO-136/137/138.
|
|
|
|
## Code review check
|
|
|
|
- [ ] Open `server/NeonSprawl.Server/Game/Factions/ReputationOperations.cs`.
|
|
- [ ] Confirm **`reputation_delta`** comment block immediately after **`auditStore.TryAppend`** returns **`true`**.
|
|
- [ ] Confirm **`TODO(E9.M1)`** markers and planned payload fields; **no** new `ILogger` or metrics calls.
|
|
- [ ] Open `server/NeonSprawl.Server/Game/Factions/FactionGateOperations.cs`.
|
|
- [ ] Confirm **`faction_gate_blocked`** comment on standing read-failure deny and threshold deny branches.
|
|
- [ ] Confirm **no** duplicate hook comments in **`QuestStateOperations`**, **`QuestAcceptApi`**, **`FactionStandingApi`**, or **`RewardRouterOperations`** for these event names.
|
|
- [ ] Open [server README — Faction telemetry hooks (NEO-141)](../../server/README.md#faction-telemetry-hooks-neo-141) — NEO-141 subsection present with event table.
|
|
- [ ] Open [server README — Reward telemetry hooks (NEO-130)](../../server/README.md#reward-telemetry-hooks-neo-130) — **`reputation_delta`** stub row removed; cross-link to NEO-141 present.
|
|
|
|
## Regression (optional)
|
|
|
|
```bash
|
|
cd server && dotnet test NeonSprawl.sln
|
|
```
|
|
|
|
Expect all tests pass (comments-only change).
|
|
|
|
## Bruno (optional sanity)
|
|
|
|
From `bruno/neon-sprawl-server/` against a running server:
|
|
|
|
- **Accept grid contract faction gate deny** — **`faction_gate_blocked`** deny unchanged.
|
|
- **Accept grid contract after operator chain** — rep grant + accept success unchanged.
|