Skip to content

Decide: money and seating behaviours kept by the coverage work #25

Description

@ryanbarlow97

The coverage work in #24 kept these behaviours as they were, or as the tests now document them. Each is a product decision rather than a bug, so please pick an option for each one.

1. Picking up a table with an absent player's stake on it

Now: clearFeltNow gives the absent player's stake to whoever picks the table up.
Options: keep it; drop the stake on the ground at the table; or hold it for the owner and return it the next time they join.

2. A Blackjack box whose cards all failed to display

Now: the box is skipped for the round and loses its stake. A test in BlackjackGameTest covers this.
Options: keep it; or treat it as a push and return the stake.

3. Chips put down mid-hand in Poker or Draw

Now: chip placement is not blocked during a live hand, because raising is done with chips. A newcomer who stakes mid-hand joins the seat list with no cards and counts as a live seat.
Options: keep it; refuse stakes from anyone not dealt into the current hand; or queue them for the next hand.

4. Saved stakes with no usable owner

Now: on load, stakes whose saved owner ID is missing or damaged are dropped as items at the table. This also covers ownerless piles in the legacy save format. Before, they went into the house tray, where settleAutoTray could delete them on staff-mint tables or bank them to a guild. The house float in legacy files is stored under the table's own ID, so it still goes to the tray.
Options: keep it (players' money is never destroyed); or send them to the tray.

5. Enforcing 100% coverage in CI

Now: coverage is 100% of lines and branches, and CI uploads the JaCoCo report, but nothing enforces it.
Options: add a JaCoCo check rule at 100% so builds fail when coverage drops; add a lower floor; or leave it as a report only.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions