alpha
Login
or
Join now
alpine.girlfag.club
/
refserver
Star
0
Fork
0
Atom
Configure Feed
Issues
Pull Requests
Commits
Tags
Feed URL
Select the types of activity you want to include in your feed.
server for refapp and refbot and other stuff
Star
0
Fork
0
Atom
Configure Feed
Issues
Pull Requests
Commits
Tags
Feed URL
Select the types of activity you want to include in your feed.
Overview
Issues
Pulls
Pipelines
refserver
/
src
/
models
/
at
main
8 files
alpine
fix: add discordLinked flag so Missing Discord filter works on numeric ids
1d ago
0294c5c1
Chart.ts
Implement phase 1 foundation: Express, WebSocket, Mongoose, models, health/version
6 days ago
Event.ts
Implement phase 4 match engine, generated-pools persistence, and audit logging Port state/match.js into src/engine/match.ts keyed by matchId with plain player data (no Discord objects). Add GeneratedPools model, event singleton service, pools persistence layer with getPoolByTier/getMatchPool, and audit logging service with query/filter support. All 228 tests pass, typecheck clean.
6 days ago
GeneratedPools.ts
Implement phase 4 match engine, generated-pools persistence, and audit logging Port state/match.js into src/engine/match.ts keyed by matchId with plain player data (no Discord objects). Add GeneratedPools model, event singleton service, pools persistence layer with getPoolByTier/getMatchPool, and audit logging service with query/filter support. All 228 tests pass, typecheck clean.
6 days ago
GuildConfig.ts
feat: shareable friendlies + persisted admin/referee roles - Unauthenticated share-link endpoints for friendly matches (/v1/matches/share/:token/*) registered before /matches/:id - shareToken generated for every friendly (createPendingMatch + initMatchState) and persisted through save/restoreMatchState - Persisted roles in GuildConfig; GET/PUT /v1/guilds/:guildId/roles and GET /v1/me - Discord actors resolve scopes from persisted role list (env DISCORD_ALLOWED_USERS fallback); boot seeds the role cache - POST /v1/matches relaxed: any logged-in user (read|referee) can create a friendly; tournament creation still requires referee scope
3 days ago
Match.ts
Add roll-off flow (SSSO 2.1) replacing check-in for friendlies - MatchState.roll + 'rolling' phase default for pending matches - engine roll()/chooseFirstBan() with tie re-roll and winner-gated ban order - serializePlayerView gains roll + server-computed turn (roll/roll-tie/choose-ban) - new routes: /matches/:id/player/roll, /choose-first-ban + share equivalents - HttpError status codes for wrong-phase/forbidden roll actions - tests: check-in->rolling assertions, friendly roll-off coverage
2 days ago
Player.ts
fix: add discordLinked flag so Missing Discord filter works on numeric ids The old missingDiscord filter (discordId: {$not: /^\d+$/}) returned 0 once every player had a numeric discordId after the SSSO backfill/rekey/ merge work. Add an explicit Player.discordLinked boolean, set it on start.gg import (DISCORD connection), rekey, and PUT, backfill existing docs via a boot migration, and switch the filter to discordLinked: {$ne: true}.
1 day ago
System.ts
Implement phase 5 HTTP/WS API: auth, routes, WebSocket subscriptions Add API key auth middleware (ApiKey/Bearer schemes, scope enforcement), Express route handlers for events, matches (ban/pick/ready/result/revert/ stop lifecycle), charts search, players search, API key management CRUD. Enhance WebSocket server with match/event subscribe/unsubscribe protocol. Integration tests with supertest against mongodb-memory-server. 260 total tests pass, typecheck clean.
6 days ago
index.ts
feat: unified player statistics with start.gg seed/team capture - Player.events migrated from ObjectId[] to membership subdocs { eventId, seed, team }; seed/team captured from start.gg on import - New Player.stats cached headline counters (all/tournament/friendly) - New playerStats engine: on-read aggregation (per-type, per-event, per-chart, recent matches) + recompute-and-store on match complete/revert - New GET /v1/players/:discordId/stats (decorates per-event with seed/team) - Fix latent bugs surfaced by tests: updatePipeline:true required on pipeline upserts (Mongoose 9); $pull must target { events: { eventId } } subdoc, not { 'events.eventId' } - Tests: playerStats.test.ts + seed/team import coverage
1 day ago