Built out tests for player model changes to support turn order enforcement. Added a turn_order and start_turn column to the model along with supporting tests. Two validations are pending an abstraction of code from the controller to the model.
Annotated schema to score_card_spec and models/score_card
Built out specs for turn_order and start_turn generation. Built out a naive implementation of turn_order and start_turn generation. The implementation could likely be improved once turn order enforcement is complete.
Built out basic specs for scorecard modifications to support turn order enforcement. Scorecards are now individually ID'd with 'score_card_X' where X is the player's turn order and each frame is now ID'd with 'turn_number_X' where X is the turn number. There is also a data attribute on each frame 'data-turn-number' for use in supporting JS. All specs are currently green. I still need to decide how to enforce scoring.
Added the 'data-select-order' attribute to each select on the scorecard partials. This will be used to iterate over and reveal each select as necessary.
Added active_select to games table for use in restoring saved games correctly.
Built out controller method 'update_select' to support game loading.
Built out update_status route.
Built out specs for Turn Enforcement and updated existing specs to work with new behavior. Embedded data-turn-order and data-select-order attributes in the scorecards for use in JS based Turn Enforcement. Embedded data-select-active and data-player-count into the play page for use in load gaming. Built out JS based turn enforcement in players.js using function based loops to allow for user input mid loop. All specs are green, and all known instances of regression have been solved.