Files
scrabble-game/go.work
Ilia Denisov aa137e3558
CI / changes (pull_request) Successful in 2s
CI / unit (pull_request) Successful in 9s
CI / integration (pull_request) Successful in 11s
CI / ui (pull_request) Successful in 38s
CI / gate (pull_request) Successful in 0s
CI / deploy (pull_request) Failing after 3s
R2: load-test harness + contour resource observability
New scrabble/loadtest module (the pre-release stress harness): seeds 1000 guest +
10000 durable accounts with pre-created sessions directly in Postgres (token hash
matches backend/internal/session), drives virtual players through the edge protocol
(real 2-4p games assembled via invitations, mid-ranked legal moves generated locally
by the embedded scrabble-solver — the edge carries no board, so the client replays
history), plus nudge/chat/check-word/draft/profile/stats and a gateway-hammer that
verifies the rate limiter. Prints a trip-report summary (per-op latency percentiles,
result codes, live-event tally). Go unit tests cover the pure pieces; the DAWG-backed
move test runs under BACKEND_DICT_DIR.

Contour: add cAdvisor + postgres_exporter + a 'Scrabble - Resources' Grafana
dashboard and the two Prometheus scrape jobs, for the R2/R7 stress-run resource
baseline.

CI: gate ./loadtest/... (path filter + vet/build/test). Docs: TESTING, ARCHITECTURE,
project CLAUDE repo layout.
2026-06-09 23:45:24 +02:00

28 lines
1.1 KiB
Plaintext

go 1.26.3
use ./backend
use (
./gateway
./loadtest
./pkg
./platform/telegram
)
// The scrabble-solver engine is consumed in-process as a published, versioned Gitea
// module (gitea.iliadenisov.ru/developer/scrabble-solver, pinned in backend/go.mod). It
// is fetched directly from Gitea — set GOPRIVATE=gitea.iliadenisov.ru/* so go skips the
// public proxy/checksum DB. For local solver co-development, temporarily add:
// replace gitea.iliadenisov.ru/developer/scrabble-solver => ../scrabble-solver
// scrabble/pkg holds the shared wire contracts (push proto + FlatBuffers edge
// payloads) imported by both backend and gateway. Its module path has no dot, so
// like scrabble-solver it cannot be fetched as a versioned dependency; the
// replace points the v0.0.0 require at the in-repo module directory.
replace scrabble/pkg v0.0.0 => ./pkg
// scrabble/gateway is required by the loadtest harness for the generated edge
// Connect client and proto envelope (gateway/proto/edge). Same dot-free reason as
// scrabble/pkg — the replace points its v0.0.0 require at the in-repo directory.
replace scrabble/gateway v0.0.0 => ./gateway