Skip to content

Resolve 15 tracked TODO comments #29

Description

@david-acm

Problem

There are at least 15 TODO comments scattered across the codebase marking unfinished work. They represent deferred decisions that accumulate technical debt and confuse future readers.

Inventory

File Line TODO text
src/Farkle/Domain/GameAggregate/Game.cs 104 (raw exception throw — replace with Result)
src/Farkle/Domain/GameAggregate/GameState.cs 21 TODO: Remove nullable (for GameId?)
src/Farkle/Endpoints/StartGameEndpoint.cs 31 (player/game wiring incomplete)
src/Farkle/Endpoints/JoinPlayerEndpoint.cs 21 (missing validation)
src/Farkle/Endpoints/KeepDiceEndpoint.cs 25 (missing validation)
src/Farkle/GameService.cs 41 (incomplete implementation)
src/Farkle/GameService.cs 48 (incomplete implementation)
src/Farkle/FarkleModuleServiceExtensions.cs 28 (config binding incomplete)
src/Farkle/FarkleModuleServiceExtensions.cs 29 (config binding incomplete)
src/WebApp.Client/Pages/Game/Game.razor.cs 11 (component wiring)
src/WebApp.Client/Features/Actions/JoinPlayer.cs 11 (player name not captured)
src/WebApp.Client/Features/Actions/JoinPlayer.cs 20 (empty player name sent)
src/WebApp.Client/Features/Actions/JoinPlayer.cs 23 (state update missing)
tests/Farkle.WebTests/GameApiWebAppFactory.cs 31 (container config incomplete)
tests/Farkle.WebTests/GameApiWebAppFactory.cs 32 (container config incomplete)

Approach

Work through each TODO and either:

  1. Implement the missing logic (preferred), or
  2. Delete the comment if the concern is no longer valid, or
  3. Convert to a new GitHub issue if it's a sizeable feature (link back here)

Related issues: #31 (Ardalis.Result), #32 (nullable GameId), #8 (player name input)

Acceptance Criteria

  • Zero TODO comments remain in the production source tree after the PR
  • Each addressed item has a commit message or inline note explaining the resolution
  • dotnet build produces 0 warnings related to these files

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions