This website requires JavaScript.
d678c59105
test: add Web TelegramSessionBatchRenderer tests
feature/telegram-game-card-fields
Toutsu
2026-06-13 15:59:53 +03:00
20b4240a11
ci: correct Testcontainers exclusion filter
Toutsu
2026-06-13 15:58:44 +03:00
e846a75ca1
ci: exclude Testcontainers integration tests from PR checks
Toutsu
2026-06-13 15:23:17 +03:00
29e5652477
test: increase Testcontainers fixture timeout to 5 minutes
Toutsu
2026-06-13 13:29:30 +03:00
02fc5bd106
ci: increase trivy fs scan timeout to 30m
Toutsu
2026-06-13 12:19:25 +03:00
6cd68493f1
fix(deps): override vulnerable MessagePack to 2.5.301 in AppHost
Toutsu
2026-06-13 11:21:57 +03:00
de121d7523
chore(version): bump version to 3.11.0
Toutsu
2026-06-13 10:56:18 +03:00
3c967dc3e3
feat(rendering): display description, system, duration, format, type and location in Telegram game card
Toutsu
2026-06-13 10:55:03 +03:00
7d5dd2ed0a
Merge pull request #138 : feat(bot): add online/offline wizard locations
main
v3.10.0
Toutsu
2026-06-10 13:50:46 +03:00
7cb5b03cc2
fix(bot): skip join-link reminders without links
feature/issue-136-wizard-format-location
Toutsu
2026-06-10 12:23:48 +03:00
014b5edd31
feat(bot): add online/offline wizard locations
Toutsu
2026-06-10 11:29:25 +03:00
bbd58142db
Merge pull request #137 : fix(bot): publish wizard-created sessions (v3.9.9)
v3.9.9
Toutsu
2026-06-09 16:38:52 +03:00
956ec01583
fix(bot): publish wizard-created sessions
fix/issue-135-wizard-publish-schedule
Toutsu
2026-06-09 16:16:36 +03:00
5014ca5c58
Merge pull request #134 : fix(shared): bind platform when creating group manager (v3.9.8)
v3.9.8
Toutsu
2026-06-09 15:41:19 +03:00
efd86bca0a
fix(shared): bind platform when creating group manager
fix/issue-133-on-conflict-inference
Toutsu
2026-06-09 15:16:54 +03:00
2241568bac
Merge pull request #132 : fix(bot): IsComplete must not flag null MaxPlayers as missing (no-limit) (v3.9.7)
v3.9.7
Toutsu
2026-06-09 13:34:37 +03:00
37ed697696
fix(bot): trim misleading comment in IsComplete
fix/issue-130-no-limit-complete
Toutsu
2026-06-09 13:33:53 +03:00
320ec18ab0
fix(bot): IsComplete must not flag null MaxPlayers as missing (no-limit)
Toutsu
2026-06-09 13:15:15 +03:00
4424d8faad
Merge pull request #130 : fix(bot): install libgssapi-krb5-2 in runtime image — restore Telegram long-polling (v3.9.6)
v3.9.6
Toutsu
2026-06-09 12:41:39 +03:00
1f3fb6e89e
fix(bot): install libgssapi-krb5-2 in runtime image
fix/issue-129-libgssapi
Toutsu
2026-06-09 12:20:32 +03:00
e3e6e841b8
Merge pull request #128 : fix(bot): keep Capacity and PickClub wizard steps consistent (v3.9.5)
v3.9.5
Toutsu
2026-06-08 22:51:04 +03:00
a0a84965b3
chore: bump version 3.9.4 -> 3.9.5
fix/issue-127-wizard-capacity-club
Toutsu
2026-06-08 22:34:27 +03:00
67e8d5b558
fix(bot): keep capacity and club wizard steps consistent
Toutsu
2026-06-08 22:34:18 +03:00
593f8a62fb
Merge pull request #126 : test: cleanup follow-up from PR #124 review (v3.9.4)
v3.9.4
Toutsu
2026-06-08 19:27:58 +03:00
aee0ac1e6c
chore: bump version 3.9.3 -> 3.9.4
fix/issue-125-test-cleanup
Toutsu
2026-06-08 19:11:31 +03:00
68945d931f
test: cleanup follow-up from PR #124 review
Toutsu
2026-06-08 19:11:28 +03:00
3db2b703d6
Merge pull request #124 : fix(bot,discord): allow 'no player limit' option in /newsession wizard (v3.9.3)
v3.9.3
Toutsu
2026-06-08 18:47:38 +03:00
3c3ef8db5a
test(web): update NavMenu_ShouldExposeCurrentProjectVersion to 3.9.3
fix/issue-123-no-limit-wizard
Toutsu
2026-06-08 18:31:17 +03:00
5c0397a5e6
chore: bump version 3.9.2 -> 3.9.3
Toutsu
2026-06-08 18:17:26 +03:00
15040eb954
fix(bot,discord): allow 'no player limit' option in /newsession wizard
Toutsu
2026-06-08 18:17:01 +03:00
99a58d7835
ci: install Trivy from official Docker image; normalize .gitignore to UTF-8
v3.9.2
Toutsu
2026-06-08 12:09:19 +03:00
f491727cec
chore: stop tracking AI scratch dirs and local screenshots
Toutsu
2026-06-08 10:49:41 +03:00
2c9016a383
fix(shared,bot,discordbot): make club-picker Dapper calls AOT-safe (v3.9.2)
Toutsu
2026-06-08 10:48:24 +03:00
065e8011ee
ci: pin Trivy v0.71.0 in install step
Toutsu
2026-06-08 10:23:31 +03:00
f796b7d1e4
fix(shared): make WizardDraftRepository AOT-safe (v3.9.1 hotfix)
v3.9.1
Toutsu
2026-06-08 10:02:59 +03:00
415c13bf00
Merge pull request 'feat(discord): step-by-step game/pool creation wizard (issue #112 )' (#122 ) from feat/issue-112-wizard-refactor into main
v3.9.0
Toutsu
2026-06-06 08:04:16 +03:00
85ff3a7faf
fix(discord): address code-review findings on wizard adapter (issue #112 )
feat/issue-112-wizard-refactor
Toutsu
2026-06-05 23:09:24 +03:00
d034d6acb9
@chore(release): bump version to 3.9.0 (issue #112 )
Toutsu
2026-06-05 22:48:49 +03:00
c4a77d3d73
docs: mark club-lookup + modal-popup as fixed in deliverable
Toutsu
2026-06-05 19:11:28 +03:00
7cfb1968c0
fix(discord): fix select/modal parser off-by-one + wire real club lookup
Toutsu
2026-06-05 19:10:20 +03:00
b1bd47f6c1
fix(discord): open modal popup after wizard state advance
Coder
2026-06-05 18:53:59 +03:00
f0952096f3
feat(discord): wizard interaction handlers + DI for StringMenu/Modal (issue #112 )
Coder
2026-06-05 18:31:47 +03:00
b81d865832
feat(discord): step-by-step game/pool creation wizard (issue #112 )
Coder
2026-06-05 17:52:29 +03:00
8f0f2ef7e7
refactor(wizard): move core to Shared, add IWizardMessenger contract (issue #112 )
Toutsu
2026-06-05 16:23:20 +03:00
71080aeab6
@chore(release): bump version to 3.8.0 (issue #111 )
v3.8.0
Toutsu
2026-06-04 15:49:01 +03:00
a843c8b278
style: dotnet format pass on wizard code
feat/issue-111-game-creation-wizard
Toutsu
2026-06-04 15:33:25 +03:00
186492a18d
test(wizard): add submit, cleanup, router delegation tests
Toutsu
2026-06-04 10:33:50 +03:00
2819786f91
test(wizard): add wizard tests + refactor to IWizardDraftRepository
Toutsu
2026-06-04 09:53:15 +03:00
8c1bda73ed
feat(wizard): register wizard services in Program.cs DI
Toutsu
2026-06-04 09:18:16 +03:00
af345ba765
feat(wizard): delegate updates to wizard when an active draft exists
Toutsu
2026-06-04 09:14:13 +03:00
4a04d7d723
refactor(wizard): make CreateSessionHandler wizard-driven and remove legacy parser
Toutsu
2026-06-04 09:00:37 +03:00
eeffae659f
feat(wizard): add WizardDraftCleanupService (1-min tick)
Toutsu
2026-06-04 08:44:57 +03:00
ea567a36ee
feat(wizard): add GameCreationWizard state-machine service
Toutsu
2026-06-04 08:42:43 +03:00
be86a2a08a
feat(wizard): add WizardStep renderer (single + pool steps)
Toutsu
2026-06-04 08:33:53 +03:00
1b49211085
feat(wizard): add WizardStorageException
Toutsu
2026-06-04 08:30:50 +03:00
96a4807002
feat(wizard): add ITelegramWizardMessenger (edit/send/answer/club-list)
Toutsu
2026-06-04 08:28:30 +03:00
cff4e48b57
feat(wizard): add step name and callback data constants
Toutsu
2026-06-04 08:18:15 +03:00
384887a862
test(wizard): add WizardDraftRepository integration tests
Toutsu
2026-06-04 08:13:22 +03:00
4d2aef637f
fix(wizard): bind @PayloadJson parameter in UpsertAsync INSERT
Toutsu
2026-06-04 08:13:10 +03:00
c45c46abcf
feat(wizard): add WizardDraftRepository (Dapper.AOT)
Toutsu
2026-06-04 08:01:46 +03:00
2c7495cd8d
feat(wizard): add WizardPayload with AOT JSON source-gen
Toutsu
2026-06-04 07:59:13 +03:00
d5fdc19016
feat(wizard): add WizardDraft POCO
Toutsu
2026-06-04 07:56:38 +03:00
10410d758c
feat(db): add wizard_drafts table (V031)
Toutsu
2026-06-04 07:52:06 +03:00
771ff9be34
Merge pull request #120 : fix(web): include PublicationMode/IsMembersOnly in showcase SQL (v3.7.1)
v3.7.1
Toutsu
2026-06-03 22:31:17 +03:00
29f6f6a827
fix(web): include PublicationMode/IsMembersOnly in showcase SQL to fix /showcase 500
fix/issue-110-showcase-500
Toutsu
2026-06-03 22:21:31 +03:00
6951c72f3c
Merge pull request #119 : feat(web): private club showcases with membership flow (v3.7.0, issue #110 )
v3.7.0
Toutsu
2026-06-03 11:46:01 +03:00
22e9859fdf
fix(web): allow cancelling pending applications; drop contradictory message guard
feat/issue-110-private-club-showcases
Toutsu
2026-06-03 11:33:28 +03:00
6cb2fbe610
feat(web): add private club showcases with membership flow (v3.7.0)
Toutsu
2026-06-03 11:09:22 +03:00
992f71c0e4
Merge pull request 'feat(web): add completed-game portfolio to GM showcase (issue #108 )' (#118 ) from codex/feature-issue-108-portfolio into main
v3.6.0
Toutsu
2026-06-02 18:28:48 +03:00
21e29564f6
docs: document portfolio release and bump version to 3.6.0
codex/feature-issue-108-portfolio
Toutsu
2026-06-02 16:07:01 +03:00
401653a4d1
feat(web): publish completed game portfolios
Claude
2026-06-02 15:41:43 +03:00
e970e94e00
feat(web): add portfolio management UI
Toutsu
2026-06-02 15:21:51 +03:00
242ff99a83
feat(web): authorize portfolio management and reviews
Claude
2026-06-02 15:01:29 +03:00
f2c9f34ab4
feat(web): add portfolio persistence
Toutsu
2026-06-02 13:04:41 +03:00
e5945288ac
feat(web): add local portfolio cover storage
Toutsu
2026-06-02 12:35:00 +03:00
7d1489445e
feat(web): define portfolio contracts and validation
Toutsu
2026-06-02 12:08:05 +03:00
4af4e52778
docs: sync portfolio task 1 review index
Toutsu
2026-06-02 10:32:34 +03:00
a20da4b1a0
fix(data): serialize portfolio mutations before rows
Toutsu
2026-06-02 10:32:13 +03:00
edf40c9a09
docs: sync portfolio task 1 review index
Toutsu
2026-06-02 07:57:46 +03:00
1a8161027c
fix(data): reject stale reschedule snapshots
Toutsu
2026-06-02 07:57:30 +03:00
85918c1e5d
docs: sync portfolio task 1 review index
Toutsu
2026-06-02 07:31:54 +03:00
ea714480d3
fix(data): serialize new-link publication races
Toutsu
2026-06-02 07:31:35 +03:00
1d62f69ff0
fix(data): lock racing portfolio publications
Toutsu
2026-06-02 07:10:37 +03:00
d762ecc377
fix(data): serialize portfolio future reschedules
Toutsu
2026-06-01 20:58:53 +03:00
a28b75dd5b
fix(data): align portfolio mutation lock order
Toutsu
2026-06-01 20:23:43 +03:00
2b725708ef
test(discord): keep Moscow time parsing fixture in future
Toutsu
2026-06-01 20:00:59 +03:00
da0a306340
fix(data): enforce completed portfolio sessions
Toutsu
2026-06-01 15:04:20 +03:00
f493836b77
fix(data): reject stale portfolio trigger snapshots
Toutsu
2026-06-01 14:39:04 +03:00
6e7a0cb493
fix(data): enforce portfolio validation isolation
Toutsu
2026-06-01 14:28:51 +03:00
76b3ff7ddf
fix(data): serialize portfolio publication validation
Toutsu
2026-06-01 14:12:29 +03:00
536061f63c
docs: sync portfolio task 1 review indexes
Toutsu
2026-06-01 10:04:44 +03:00
f7a12d14d2
docs: document portfolio concurrency hardening plan
Toutsu
2026-06-01 09:56:33 +03:00
3c1a98bcc4
fix(data): harden portfolio publication concurrency
Toutsu
2026-06-01 09:46:18 +03:00
d591e5ed5a
fix(data): protect portfolio publication invariant
Toutsu
2026-06-01 09:20:27 +03:00
5809a470b9
test(data): scope portfolio migration assertions
Toutsu
2026-06-01 09:07:47 +03:00
ed842d2195
test(data): harden portfolio migration contract
Toutsu
2026-05-30 23:37:40 +03:00
a0040ec9fb
test(data): tighten portfolio moderation schema assertion
Toutsu
2026-05-30 23:25:12 +03:00
67b8aafd97
feat(data): add completed game portfolio schema
Toutsu
2026-05-30 23:21:31 +03:00
ac417731d6
docs: plan completed game portfolio implementation
Toutsu
2026-05-30 21:36:05 +03:00
991c7e1965
docs: specify completed game portfolio
Toutsu
2026-05-30 14:16:12 +03:00