Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Increase visibility of games requiring scoring confirmation #700

Open
yewang opened this issue Oct 22, 2018 · 7 comments

Comments

@yewang
Copy link

commented Oct 22, 2018

Summary

Currently, it is quite easy to overlook a correspondence game that has entered the scoring (stone removal) phase, where you are required to mark/confirm the life/death status of the stones.

Suggestion: increase the visibility of these games with the following changes

  • Send an email notification when marking or confirmation of stones are required.
  • Add these games to the rotation of games where its your move to play (as accessed by auto-advance or clicking the number in the top-right).

Environment

Website behavior appears to affect all browsers. Seen on Chrome and Firefox on Linux, Windows, and Android.

Steps To Reproduce:

  1. Enter scoring (stone removal) phase of a correspondence game, but leave the stone status unconfirmed. Alternatively, you can confirm stone status first, but then have your confirmation cleared by your opponent changing the stone status.
  2. Cycle through games with your move to play (by auto-advancing from another game or clicking on the advance to next game button in the top-right).
  3. Check email for notifications (if scoring phase entered by opponent making second pass while you were away from the site).

Additional Information:

This issue is described further as the second item in this forum post:
https://forums.online-go.com/t/two-suggestions-related-to-correspondence-games/17979

@anoek anoek added the enhancement label May 25, 2019

@anoek anoek added this to UI/UX QoL in Issue organization May 26, 2019

@anoek anoek moved this from UI/UX QoL to Overview in Issue organization May 26, 2019

@flovo

This comment has been minimized.

Copy link
Contributor

commented Aug 10, 2019

Add these games to the rotation of games where its your move to play (as accessed by auto-advance or clicking the number in the top-right).

These games should already be in the rotation (see line 305-314 below).

For some reason, directly after connecting to 'notification/connect', we get notifications for all games in phase 'play', but not for games in phase 'stone removal'. On the other hand, if we are already connected, we get notifications for games which enter 'stone removal' as well. These games are added to the rotation as expected.

comm_socket.on("active_game", (game) => {
delete this.boards_to_move_on[game.id];
if (game.phase === "stone removal") {
if ((game.black.id === data.get("user").id && !game.black.accepted)
|| (game.white.id === data.get("user").id && !game.white.accepted)
) {
this.boards_to_move_on[game.id] = game;
}
}

@BHydden

This comment has been minimized.

Copy link
Contributor

commented Sep 9, 2019

This might be a stupid question... but when you look at the API is the game phase "stone removal" or "stone_removal"?

@flovo

This comment has been minimized.

Copy link
Contributor

commented Sep 9, 2019

'phase': 'stone removal' {'id': 5881, 'phase': 'stone removal', 'name': "Don't accept", 'player_to_move': 815, 'width': 9, 'height': 9, 'move_number': 17, 'paused': 1568070436958, 'private': False, 'black': {'username': 'flovo', 'id': 794, 'rank': 17.749501175185603, 'professional': False, 'accepted': False, 'ratings': {'overall': {'rating': 1500, 'deviation': 350, 'volatility': 0.06, 'games_played': 0}}}, 'white': {'username': 'flovo_test', 'id': 815, 'rank': 17.749501175185603, 'professional': False, 'accepted': False, 'ratings': {'overall': {'rating': 1500, 'deviation': 350, 'volatility': 0.06}}}, 'time_per_move': 999999}
@flovo

This comment has been minimized.

Copy link
Contributor

commented Sep 9, 2019

We could work around it by using https://online-go.com/api/v1/ui/overview to initialisize the turn-indicator, but this would introduce raise conditions.

refresh() {
abort_requests_in_flight("ui/overview");
return get("ui/overview").then((overview) => {
this.setState({"overview": overview, resolved: true});
}).catch((err) => {
this.setState({resolved: true});
errorAlerter(err);
});
}

@BHydden

This comment has been minimized.

Copy link
Contributor

commented Sep 9, 2019

Yeah probably best for anoek to fix whatever is broken on the back end that isn't pushing score phase games into the notification like the others than to hack the API into the equation :P I don't think anoek would like that solution... just a headache for tomorrow ;)

@flovo

This comment has been minimized.

Copy link
Contributor

commented Sep 9, 2019

Guess why I haven't created a patch yet 😉

@BHydden

This comment has been minimized.

Copy link
Contributor

commented Sep 9, 2019

It could be the only reason, you've fixed everything else on the site already 😉

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
4 participants
You can’t perform that action at this time.