Commit graph

25 commits

Author SHA1 Message Date
Lukas Müllner
4335d3b7a2 chore: apply review fixes and typed error hardening 2026-03-09 18:32:45 +01:00
Lukas Müllner
fb96d0bfb7 fix(db): add atomic collection creation RPC path with migration script 2026-03-06 08:14:35 +01:00
Lukas Müllner
38de6d8b86 fix(review): address auth subscription, safe image replace, logging and widget tests 2026-03-06 07:43:40 +01:00
Lukas Müllner
eab9000247 fix(regressions): restore member counts and improve duplicate-copy feedback 2026-03-05 15:10:32 +01:00
Lukas Müllner
c2d8e754a2 perf(collections): remove N+1 member count RPCs with single batched query 2026-03-05 14:43:01 +01:00
Lukas Müllner
947992e8b9 fix(stability): remove auth/context force unwraps and add guarded null-safe paths 2026-03-05 14:39:00 +01:00
Lukas Müllner
34597b9909 fix: use exact collection stats beyond row limits 2026-03-05 14:13:26 +01:00
Lukas Müllner
f2c3e80f3f chore: polish membership error messages 2026-03-05 12:05:02 +01:00
Lukas Müllner
febba238ec fix: add rpc-backed member removal migration 2026-03-05 11:56:01 +01:00
Lukas Müllner
da9981d297 fix: make member removal check rls-safe 2026-03-05 11:40:30 +01:00
Lukas Müllner
d03e276ddf fix: use rpc-backed lookup for member removal 2026-03-05 11:19:41 +01:00
Lukas Müllner
943f08e92b fix: verify member removal persistence 2026-03-05 11:05:46 +01:00
Lukas Müllner
bb389d6f78 fix: correct member counts and member removal flow 2026-03-05 10:56:20 +01:00
Lukas Müllner
bd177cedcc fix: resolve invite overflow and member removal lookup 2026-03-05 10:46:30 +01:00
Lukas Müllner
bebd21097d fix: enforce role-based collection actions and instant defaults 2026-03-05 10:30:40 +01:00
Lukas Müllner
27bf33593e fix: bootstrap defaults and refine shared collection actions 2026-03-05 10:07:06 +01:00
Lukas Müllner
e4afe7b63c feat(collections): persist active collection and harden member actions
- Persist scanner activeCollectionId via shared_preferences
- Restore last selected collection automatically on scan tab load
- Keep selection valid if collection list changes and store fallback safely
- Harden collection membership service rules:
  - only owners can invite/remove members
  - prevent self-invite duplicates
  - block owner removal
  - block owner leave action with explicit error
- Improve manage-collection UX with pull-to-refresh and owner leave guidance
2026-03-04 10:38:14 +01:00
Lukas Müllner
d8dbc2573a feat(v3.0): rebrand to car64 and align app flow with TPB schema
- Rename installed app display name to car64 (Android/iOS/Web titles)
- Remove Buy Me a Coffee link from About screen
- Update app version to 3.0.0+1
- Migrate scanner workflow to catalog-first flow:
  - look up in global_cars
  - show Found in Catalog bottom sheet for known cars
  - show New Discovery bottom sheet and insert into global_cars + car_votes
  - insert only into hotwheels for collection entries
- Align garage reads to TPB schema by joining global_cars
- Switch image field usage from image_url to user_image_url
- Implement private-storage image service:
  - upload path auth.uid()/hotwheels.id.jpg
  - signed URL generation (1h) for display
  - in-app compression pipeline targeting <=500KB and max 1080px width
- Use local brand fallback image assets/img/icon_bg_removed.png for missing car photos
- Restrict edit dialog to personal notes (hotwheels) instead of global car metadata
- Ensure first login auto-creates a default collection and owner membership
2026-03-04 10:12:12 +01:00
Lukas Müllner
2c6ae514fb fix: update app version to 2.0.0 and modify subtitle in profile screen 2026-02-25 07:17:47 +01:00
Lukas Müllner
b51d2b4ec1 fix: update collection service to use inFilter for querying collection IDs 2026-02-25 06:39:15 +01:00
Lukas Müllner
9f9a0cb601
Merge pull request #2 from DieLustigenTierwesen/copilot/sub-pr-1
Add client-side ownership enforcement to CollectionService update/delete
2026-02-24 20:42:55 +01:00
copilot-swe-agent[bot]
4fbd776605 Add client-side ownership checks to update and delete methods
Co-authored-by: derkauzigekoala <79001016+derkauzigekoala@users.noreply.github.com>
2026-02-24 19:18:27 +00:00
Lukas Müllner
2699242fdf
Update lib/services/collection_service.dart
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-02-24 20:16:21 +01:00
Lukas Müllner
ca11df0152
Update lib/services/collection_service.dart
n+1 performance

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-02-24 20:13:39 +01:00
Lukas Müllner
eaf538bf45 feat: implement collections feature with screens for viewing, managing, and creating collections 2026-02-24 16:38:35 +01:00