thibaud-leclere
0e3b17bb7d
docs: add project README
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-01 18:14:31 +02:00
thibaud-leclere
246d6fc740
fix: reorder constructor params in ImportFilmsBatchMessageHandler
...
Move AwardImporter after ImportRepository to fix autowiring order
in compiled container cache.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-01 14:44:08 +02:00
thibaud-leclere
353ffddeea
feat: add popover to confirm abandon
2026-04-01 14:36:41 +02:00
thibaud-leclere
fb13a8819d
feat: use DB awards instead of live Wikidata calls for hint generation
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-01 14:29:36 +02:00
thibaud-leclere
0fd0b85b8f
feat: import actor awards during film batch import
2026-04-01 14:27:54 +02:00
thibaud-leclere
8aa33ccefc
feat: add AwardImporter service with tests
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-01 14:27:15 +02:00
thibaud-leclere
d4d2272396
feat: add migration for award_type, award tables and actor.awards_imported
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-01 14:24:48 +02:00
thibaud-leclere
6c1e4cb38b
feat: add awardsImported flag and awards relation to Actor
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-01 14:23:56 +02:00
thibaud-leclere
859a5a1067
feat: add Award entity and repository
2026-04-01 14:23:23 +02:00
thibaud-leclere
acc266739d
feat: add AwardType entity and repository
2026-04-01 14:22:33 +02:00
thibaud-leclere
76013afb1c
docs: add implementation plan for awards in database
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-01 14:20:20 +02:00
thibaud-leclere
d2d211a228
docs: add design spec for persisting awards in database
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-01 14:17:04 +02:00
thibaud-leclere
116812b3f8
save movies release date in BDD, remove unused badge, add help to export movie from letterboxd
2026-03-31 22:18:46 +02:00
thibaud-leclere
c5d359bb0c
remove unused sync commands (app:sync-actors, app:sync-films)
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-31 21:55:08 +02:00
thibaud-leclere
ded3d063c6
fix: render hint popover via FloatingPortal to prevent overflow clipping
...
The popover was invisible because it rendered inside the table's
overflow-x:auto scroll container. FloatingPortal moves it to document.body.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-31 21:49:46 +02:00
thibaud-leclere
2e65b2805a
feat: add login hint on start page for unauthenticated users
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-31 21:49:41 +02:00
thibaud-leclere
dba9b985ee
feat: rename site title to LtbxdActorle with dual-color branding
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-31 21:38:26 +02:00
thibaud-leclere
a37ac1debd
fix: resolve messenger worker OOM by clearing EntityManager and disabling debug
...
Clear Doctrine identity map after each film import to prevent memory
accumulation. Run messenger with --no-debug and higher PHP memory_limit
to avoid profiling overhead in dev.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-31 21:34:11 +02:00
thibaud-leclere
6a844542ad
feat: replace notifications with import status in profile dropdown
...
Remove the notification system entirely and show import progress
directly in the user dropdown menu. Block new imports while one
is already running.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-31 21:34:05 +02:00
thibaud-leclere
3edde1c7db
feat: add loading spinner when starting a new game
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-31 21:28:08 +02:00
thibaud-leclere
8942e7f608
fix: integrate hint buttons into table for perfect row alignment and sticky scroll
...
Move hint buttons from a separate flex column into the table as the
first <td> of each row, ensuring pixel-perfect alignment with grid rows.
Use position:sticky with box-shadow to keep hints fixed on the left
while scrolling horizontally.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-31 19:36:32 +02:00
thibaud-leclere
f6d180474a
feat: responsive grid with scrollable area and fixed hint column
...
- Add CSS variables (--cell, --cell-font, --trigger-h) for responsive cell sizing
- Shrink grid cells at 600px and 420px breakpoints
- Add .page-body wrapper with 16px horizontal padding to prevent edge collisions
- Separate hint column from scrollable grid: hints rendered outside the table in a fixed flex column, only the letter grid scrolls horizontally
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-31 14:17:22 +02:00
thibaud-leclere
6cbebb6367
refactor: move WikidataAwardGateway to src/Gateway/WikidataGateway.php
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-31 11:14:20 +02:00
thibaud-leclere
ecfc80c349
style: redesign hint buttons — rectangular pink with white icon, more spacing
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-31 11:09:57 +02:00
thibaud-leclere
dc5e14531f
chore: fix report bug issue template
2026-03-30 23:18:14 +02:00
thibaud-leclere
1fd6dcc5d3
fix: add 16px left margin to popover to avoid screen edge
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-30 22:54:59 +02:00
thibaud-leclere
0706d99c82
fix: force popover to left placement with soft wrap when space is limited
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-30 22:53:58 +02:00
thibaud-leclere
273ea49ed0
fix: generate hints about the row actor, not the main actor
...
Hints should help identify the row actor (to find the highlighted letter),
not reveal the main actor directly. Simplified hint generation: no shared
exclusion pools needed since each row has a different actor.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-30 22:51:22 +02:00
thibaud-leclere
8d413b5c57
fix: review fixes — cache Wikidata calls, add timeout, improve escaping, hide empty popovers
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-30 22:38:05 +02:00
thibaud-leclere
91f45448f0
feat: replace ? button with hint type icons in ActorPopover
2026-03-30 22:35:39 +02:00
thibaud-leclere
42a3567e1c
feat: resolve hint display text in computeGridData
2026-03-30 22:33:51 +02:00
thibaud-leclere
32ae77da53
feat: generate hints per row in GameGridGenerator
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-30 22:32:51 +02:00
thibaud-leclere
c2efdd4eeb
feat: add WikidataAwardGateway for actor awards from Wikidata SPARQL
2026-03-30 22:31:42 +02:00
thibaud-leclere
7f3738007d
feat: add findOneRandomByActor to MovieRoleRepository
2026-03-30 22:31:07 +02:00
thibaud-leclere
e3ee26e070
feat: add hintType and hintData columns to GameRow entity
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-30 22:30:30 +02:00
thibaud-leclere
cdcd3312ef
docs: add game hints implementation plan
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-30 22:26:32 +02:00
thibaud-leclere
4fb1a25469
docs: add game hints system design spec
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-30 22:21:26 +02:00
thibaud-leclere
335a55562f
feat: handle non-letter characters in actor names with separator rows
...
Display spaces, hyphens and other non-letter characters as static cells
instead of input fields, and add separator rows in the grid for
non-alphabetic characters in the main actor's name.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-30 21:59:11 +02:00
thibaud-leclere
ba9a3fba5d
feat: replace code icon with Git logo in navbar
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-30 21:58:43 +02:00
thibaud-leclere
86bf2eb1d3
feat: move hints column to the left of the game grid
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-30 21:33:40 +02:00
thibaud-leclere
1f80b554fd
Remove AppExtension
2026-03-30 21:17:17 +02:00
thibaud-leclere
52c40f1ecc
feat: add bug report issue template and report button on game grid
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-30 20:36:39 +02:00
thibaud-leclere
c35e239450
various fixes
2026-03-30 20:12:10 +02:00
thibaud-leclere
2f5ba701b6
feat: wrap game in centered card, style abandon button, abandon anonymous game on login
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-30 19:55:32 +02:00
thibaud-leclere
96adefbb1e
feat: update homepage template with start/abandon game UI
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-30 19:46:58 +02:00
thibaud-leclere
a6b3a93d5c
refactor: use persisted games in HomepageController
2026-03-30 19:46:12 +02:00
thibaud-leclere
884168aa49
feat: add GameController with start and abandon actions
2026-03-30 19:45:39 +02:00
thibaud-leclere
ef155463ab
feat: add GameGridGenerator service
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-30 19:44:50 +02:00
thibaud-leclere
1d7c215887
feat: add migration for game and game_row tables
2026-03-30 19:44:05 +02:00
thibaud-leclere
665233425a
feat: add Game and GameRow repositories
2026-03-30 19:43:39 +02:00