• Mahmoud Aglan's avatar
    fix(online): matchmaking for ludo, domino and backgammon actually matches · 1b6fe1dc
    Mahmoud Aglan authored
    Found by the gameplay pass, verified against production with throwaway
    accounts (31/31 checks):
    
    - ludo: the queue filtered and ordered on created_at, a column ludo_queue does
      not have, so no two players were ever matched; five stale rows from July to
      September were also deleted.
    - domino and ludo status/get decoded jsonb columns that already arrive as
      arrays: a PHP 8 TypeError, so the waiting player never learned of the match
      and every live poll failed.
    - all three: the zero-UUID claim placeholder was reported as a found match and
      its row deleted; failed inserts were reported as success; domino hands were
      renumbered by array_merge; complete passed p_winners as a string (the RPC
      refused it) and could pay twice. Complete now pays once, to seated players.
    - engine.js loads each game module independently, so one module failing to
      load can no longer stop the whole app from booting.
    Co-Authored-By: 's avatarClaude Opus 5.5 <noreply@anthropic.com>
    1b6fe1dc
Name
Last commit
Last update
.claude Loading commit data...
ChessPieces Loading commit data...
Connections and docs Loading commit data...
Logo El3ab Loading commit data...
admin Loading commit data...
api Loading commit data...
app icons Loading commit data...
config Loading commit data...
docs Loading commit data...
includes Loading commit data...
ludo-playtest Loading commit data...
migrations Loading commit data...
promo Loading commit data...
public Loading commit data...
screenshots Loading commit data...
test-screenshots Loading commit data...
tests Loading commit data...
tools Loading commit data...
.gitignore Loading commit data...
.htaccess Loading commit data...
ARCHITECTURE.md Loading commit data...
ASSET_REGISTRY.json Loading commit data...
ASSET_REGISTRY.md Loading commit data...
BUILD_ORDER.md Loading commit data...
DATABASE_REFERENCE.md Loading commit data...
DESIGN.md Loading commit data...
Dockerfile Loading commit data...
FIX_PLAN.md Loading commit data...
HANDOVER.md Loading commit data...
MULTIPLAYER_RULES.md Loading commit data...
PLAN.md Loading commit data...
PRODUCT.md Loading commit data...
ROADMAP.md Loading commit data...
Stockfishbotsapi.txt Loading commit data...
WTF.md Loading commit data...
backgammon-test.mjs Loading commit data...
bell.png Loading commit data...
captain-definition Loading commit data...
chess-browser-test.mjs Loading commit data...
chess-multiplayer-test.mjs Loading commit data...
chess-sync-test.mjs Loading commit data...
domino-test.mjs Loading commit data...
index.php Loading commit data...
logof.png Loading commit data...
manifest.json Loading commit data...
package-lock.json Loading commit data...
package.json Loading commit data...
privacy-policy.php Loading commit data...
qr-code.png Loading commit data...
terms.php Loading commit data...
test-tournament-swiss.mjs Loading commit data...
test-tournament-ui.mjs Loading commit data...