Claude
401653a4d1
feat(web): publish completed game portfolios
2026-06-02 15:41:43 +03:00
Toutsu
e970e94e00
feat(web): add portfolio management UI
2026-06-02 15:21:51 +03:00
Claude
242ff99a83
feat(web): authorize portfolio management and reviews
2026-06-02 15:01:29 +03:00
Toutsu
f2c9f34ab4
feat(web): add portfolio persistence
2026-06-02 14:46:57 +03:00
Toutsu
e5945288ac
feat(web): add local portfolio cover storage
2026-06-02 12:35:00 +03:00
Toutsu
7d1489445e
feat(web): define portfolio contracts and validation
2026-06-02 12:21:55 +03:00
Toutsu
4af4e52778
docs: sync portfolio task 1 review index
2026-06-02 10:32:34 +03:00
Toutsu
a20da4b1a0
fix(data): serialize portfolio mutations before rows
2026-06-02 10:32:13 +03:00
Toutsu
edf40c9a09
docs: sync portfolio task 1 review index
2026-06-02 07:57:46 +03:00
Toutsu
1a8161027c
fix(data): reject stale reschedule snapshots
2026-06-02 07:57:30 +03:00
Toutsu
85918c1e5d
docs: sync portfolio task 1 review index
2026-06-02 07:31:54 +03:00
Toutsu
ea714480d3
fix(data): serialize new-link publication races
2026-06-02 07:31:35 +03:00
Toutsu
1d62f69ff0
fix(data): lock racing portfolio publications
2026-06-02 07:10:37 +03:00
Toutsu
d762ecc377
fix(data): serialize portfolio future reschedules
2026-06-01 20:58:53 +03:00
Toutsu
a28b75dd5b
fix(data): align portfolio mutation lock order
2026-06-01 20:23:43 +03:00
Toutsu
2b725708ef
test(discord): keep Moscow time parsing fixture in future
2026-06-01 20:00:59 +03:00
Toutsu
da0a306340
fix(data): enforce completed portfolio sessions
2026-06-01 15:04:20 +03:00
Toutsu
f493836b77
fix(data): reject stale portfolio trigger snapshots
2026-06-01 14:39:04 +03:00
Toutsu
6e7a0cb493
fix(data): enforce portfolio validation isolation
2026-06-01 14:28:51 +03:00
Toutsu
76b3ff7ddf
fix(data): serialize portfolio publication validation
2026-06-01 14:12:29 +03:00
Toutsu
536061f63c
docs: sync portfolio task 1 review indexes
2026-06-01 10:04:44 +03:00
Toutsu
f7a12d14d2
docs: document portfolio concurrency hardening plan
2026-06-01 09:56:33 +03:00
Toutsu
3c1a98bcc4
fix(data): harden portfolio publication concurrency
2026-06-01 09:46:18 +03:00
Toutsu
d591e5ed5a
fix(data): protect portfolio publication invariant
2026-06-01 09:20:27 +03:00
Toutsu
5809a470b9
test(data): scope portfolio migration assertions
2026-06-01 09:07:47 +03:00
Toutsu
ed842d2195
test(data): harden portfolio migration contract
2026-05-30 23:37:40 +03:00
Toutsu
a0040ec9fb
test(data): tighten portfolio moderation schema assertion
2026-05-30 23:25:12 +03:00
Toutsu
67b8aafd97
feat(data): add completed game portfolio schema
2026-05-30 23:21:31 +03:00
Toutsu
ac417731d6
docs: plan completed game portfolio implementation
2026-05-30 21:36:05 +03:00
Toutsu
991c7e1965
docs: specify completed game portfolio
2026-05-30 14:16:12 +03:00
Toutsu
0d9df29f58
Merge pull request #116 : feat(web): redesign profile page to match design system
Deploy Telegram Bot / build-and-push (push) Successful in 6m5s
Deploy Telegram Bot / scan-images (push) Successful in 3m44s
Deploy Telegram Bot / deploy (push) Successful in 33s
2026-05-29 15:19:45 +03:00
Toutsu
d54950698a
feat(web): redesign profile page to match design system
...
PR Checks / test-and-build (pull_request) Successful in 12m8s
- Rewrite Profile.razor to use .page-container, .glass-card, .gm-alert,
.btn-gm, .status-badge, .empty-state and other standard design system classes
- Replace custom unstyled markup with breadcrumb, page-header, skeleton loaders
- Add .identity-list styles to app.css for linked accounts section
- Unify visual language with Home, Templates and GroupDetails pages
2026-05-29 15:15:48 +03:00
Toutsu
394bd19b95
Merge pull request #114 : fix(web): restore public game pages
Deploy Telegram Bot / build-and-push (push) Successful in 6m0s
Deploy Telegram Bot / scan-images (push) Successful in 3m30s
Deploy Telegram Bot / deploy (push) Successful in 30s
v3.5.1
2026-05-29 09:40:20 +03:00
Toutsu
b52d4000b4
fix(web): restore public game pages
...
PR Checks / test-and-build (pull_request) Successful in 11m56s
Use the existing group_managers.created_at column when picking owner profile links for public pages.
Bump version -> 3.5.1
2026-05-29 09:27:01 +03:00
Toutsu
b32f962f11
Merge pull request #113 : feat(web): add public master profiles
Deploy Telegram Bot / build-and-push (push) Successful in 6m20s
Deploy Telegram Bot / scan-images (push) Successful in 3m0s
Deploy Telegram Bot / deploy (push) Successful in 28s
v3.5.0
2026-05-29 00:22:43 +03:00
Toutsu
0c1d3abd7e
feat(web): add public master profiles
...
PR Checks / test-and-build (pull_request) Successful in 12m32s
Add sanitized public GM profiles with publication controls, public /gm/{slug} pages, and links from public game surfaces.
Bump version -> 3.5.0
2026-05-29 00:08:14 +03:00
Toutsu
d81564c308
Merge pull request #109 : feat: добавить каталог игр и витрину ваншотов (issue #39 )
Deploy Telegram Bot / build-and-push (push) Successful in 6m52s
Deploy Telegram Bot / scan-images (push) Successful in 3m21s
Deploy Telegram Bot / deploy (push) Successful in 33s
v3.4.0
2026-05-28 17:56:53 +03:00
Toutsu
accb3b2405
fix(web): правильный парсинг query string для ?register=1
...
PR Checks / test-and-build (pull_request) Successful in 12m50s
Заменен Navigation.Uri.Contains() на QueryHelpers.ParseQuery
для корректного определения параметра register без ложных
срабатываний на подстроки (например, register=10).
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com >
2026-05-28 17:28:51 +03:00
Toutsu
a63e3bef1e
fix: финальные правки ревью для issue #39
...
PR Checks / test-and-build (pull_request) Successful in 13m16s
- PublicSession.razor: добавлена обработка ?register=1, AuthStateProvider,
TryGetPlatformIdentity, кнопки записи для авторизованных/неавторизованных
пользователей, отображение результата регистрации
- CreateSessionHandler: добавлен cover_image_url в INSERT SQL
- DiscordProjectStructureTests: версия 3.4.0 во всех проверках
- README.md: актуальная версия v3.4.0
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com >
2026-05-28 17:00:33 +03:00
Toutsu
9d9aca53df
chore: bump version to 3.4.0
2026-05-28 16:43:11 +03:00
Toutsu
5b6971fda5
test: consolidate capacity tests, add GameSystem edge cases, remove ShowcaseQueryTests
2026-05-28 16:40:11 +03:00
Toutsu
b496a401fc
test: add GameSystem fuzzy matching and showcase query tests
...
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com >
2026-05-28 16:33:29 +03:00
Toutsu
76c6818952
fix(shared): add missing Platform parameter in players upsert
2026-05-28 16:28:25 +03:00
Toutsu
633a020212
fix(shared): convert GameSystem to string in SQL, guard rollback after commit
2026-05-28 16:26:54 +03:00
Toutsu
ab38238fe8
feat(shared): extend CreateSessionCommand with showcase metadata
...
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com >
2026-05-28 16:20:44 +03:00
Toutsu
4145cacc52
fix(web): add session-description styles for public session detail
2026-05-28 16:18:58 +03:00
Toutsu
6d59737d07
feat(web): update public session detail with showcase fields
...
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com >
2026-05-28 16:13:35 +03:00
Toutsu
71ffcce06b
fix(web): add try/finally, concurrency guard, accessible label, registration link to showcase
2026-05-28 16:07:09 +03:00
Toutsu
72f43dbef2
feat(web): add /showcase catalog page with filters
...
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com >
2026-05-28 16:00:21 +03:00
Toutsu
a5f4a68c6a
fix(web): add public-session guards and ON CONFLICT to RegisterFromShowcaseAsync
2026-05-28 15:40:21 +03:00