Commit graph

157 commits

Author SHA1 Message Date
5afd31fdb6 soft delete phantoms after claim confirmation
keeps phantom records for logging, excludes from all queries
2025-12-17 20:08:28 -08:00
7f2db88a6c Fix merge conflict 2025-12-15 17:53:06 -08:00
00a9b61d92 add migration to remove standard series from db 2025-12-15 17:51:51 -08:00
3ac6829a45 add migration to remove standard series from db 2025-12-15 17:48:17 -08:00
b341185b54 add image_id and action_id fields to job_skills 2025-12-15 16:08:53 -08:00
056aa3676f move gacha from characters to weapons
weapons have gacha boolean now, characters don't
2025-12-15 12:46:43 -08:00
d54af86dc1 remove Standard season, remap values to start at 1 2025-12-15 09:51:19 -08:00
65a10abe6d update schema files 2025-12-14 11:58:45 -08:00
3b5b8412d3 add summon series lookup table 2025-12-14 11:58:22 -08:00
e7e9bd0f86 add character series lookup table 2025-12-14 11:58:10 -08:00
513f8c6a66 use 1-based values for collection_privacy enum 2025-12-14 01:23:42 -08:00
e0ba2d98c3 add show_granblue_id to users 2025-12-14 01:23:33 -08:00
d4c88997ff add retired flag to phantom players 2025-12-04 03:02:46 -08:00
26718b5a3e gw event improvements: status field, members_during_event endpoint 2025-12-04 03:02:35 -08:00
5968ed74d5 add joined_at to memberships and phantoms for historical data
- editable field separate from created_at
- active_during scope uses joined_at for filtering
- backfills from created_at in migration
2025-12-04 03:02:13 -08:00
4c8f4ffcf3 add phantom players for non-registered crew members
- phantom_players table for tracking scores of non-user members
- claim flow: officer assigns phantom to user, user confirms, scores transfer
- CRUD endpoints plus /assign and /confirm_claim actions
- model/request specs for all functionality (37 examples)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-03 23:55:15 -08:00
f2a058b6b2 add GW events and scoring system
- create gw_events, crew_gw_participations, gw_crew_scores, gw_individual_scores
- add models, blueprints, controllers for GW tracking
- add model specs and gw_events controller specs

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-03 23:34:54 -08:00
b75a905e2e add crew invitations system
- create crew_invitations table with status enum
- add CrewInvitation model with accept/reject flow
- add CrewInvitationsController for send/accept/reject
- add invitation error classes
- add invitation routes nested under crews
- add pending invitations endpoint for current user
- 38 passing specs for model and controller
2025-12-03 23:06:07 -08:00
9b01aa0ff3 add crew and crew_membership models with migrations
- crews table with name, gamertag, granblue_crew_id, description
- crew_memberships with role enum (member/vice_captain/captain)
- partial unique index ensures one active crew per user
- updated User model with crew associations and helper methods
2025-12-03 22:41:19 -08:00
35b8a674ab add collection references to grid tables 2025-12-03 22:40:34 -08:00
6cf85a5b3e add artifact import from game data
- Add ArtifactImportService to parse game JSON and create collection artifacts
- Maps game skill_id to our (group, modifier) format using verified mapping
- Handles skill quality -> strength lookup via ArtifactSkill.base_values
- Supports duplicate detection via game_id, with optional update_existing flag
- Quirk artifacts get proficiency from game data; skills stored as empty
- Add POST /collection/artifacts/import endpoint
- Add game_id column to collection_artifacts, collection_weapons,
  collection_summons for tracking game inventory instance IDs
2025-12-03 14:20:21 -08:00
e6539ad7e1 add reroll_slot to artifact models 2025-12-03 13:27:26 -08:00
183641b842 add data migrations for artifacts and artifact_skills 2025-12-03 13:00:45 -08:00
c0f13c6b9c update data_schema 2025-12-03 12:59:11 -08:00
d6d655297b add artifact seed data 2025-12-03 12:58:35 -08:00
210af50477 add migrations for artifacts feature 2025-12-03 12:58:22 -08:00
83d065e2f9 split weapon_series data migration into three separate files 2025-12-03 12:56:51 -08:00
38f126f2ef fix weapon_series boolean flags and ordering 2025-12-03 12:33:55 -08:00
3a8d42f800 fix weapon_series data migration to match canonical order 2025-12-03 12:14:44 -08:00
4a51b18ab8 update schema files 2025-12-03 10:47:06 -08:00
efe9abed60 add test factories and fixtures for weapon_series 2025-12-03 10:46:54 -08:00
12e3965325 add data migration for weapon_series 2025-12-03 10:46:41 -08:00
9d6dd335ae add weapon_series and weapon_key_series tables and models 2025-12-03 10:45:25 -08:00
6f646101f2 add promotions integer array to weapons and summons 2025-12-02 04:39:15 -08:00
6e62053754 add season, series, gacha_available to characters 2025-12-02 04:06:53 -08:00
be5be0c3fe fix blueprints: use correct association names instead of 'object' 2025-11-29 17:41:29 -08:00
07e5488e0b Add custom page size support via X-Per-Page header
- Add page_size helper method to read from X-Per-Page header
- Set min (1) and max (100) bounds for page sizes
- Update all paginated endpoints to use dynamic page size
- Maintain backward compatibility with default sizes
2025-09-17 05:44:14 -07:00
b03d5e6618
Fix error in weapons (#199) 2025-03-30 21:08:04 -07:00
832bf86d47 New items from March Legfest and Scenario Event 2025-03-31 00:02:25 -04:00
92de40bbbf Add columns for Classic II and Collab Gacha 2025-03-27 01:37:53 -04:00
aaa046c01f Add new items 2025-03-27 01:37:42 -04:00
7880ac76cc
Add data ingestion endpoints (#195)
* Update schema.rb

* Add endpoints for importing game data

This lets privileged users import canonical data for characters, weapons and summons directly from the game
2025-03-02 17:48:35 -08:00
28a6b1894e
Delete db/migrate/20250301143956_add_wiki_raw_to_characters.rb (#194) 2025-03-02 16:29:05 -08:00
c060a4525b Update migration
Now this adds raw data columns to weapons, summons, and characters
2025-03-02 16:08:35 -08:00
b1800f411f
Cleans up data on some Characters (#192)
This should update the `wiki_en` field for Kaguya, Fenie, and Uriel. It also adds `character_id` for 6 characters that were missing a value.
2025-03-01 07:31:49 -08:00
e1d983a6d4 Adds recruits IDs to new weapons 2025-02-28 18:24:15 -08:00
b2d2952b35
Fix limit column in weapon migration (#188)
* Update weapon series migration

This update fixes MigrateWeaponSeries from 20250218 such that it can be run on an empty database without throwing errors.

* Add items from late 2025-02

* Yuel (Grand)
* Tsukuyomi
* Sennen Goji
* Nightgaze Gale
* Bane of Avidya
* Klesha-Cleaning Dharmachakra

* Add default value for limit column
2025-02-27 20:41:51 -08:00
6bcbc97566
Jedmund/202502 update (#187)
* Update weapon series migration

This update fixes MigrateWeaponSeries from 20250218 such that it can be run on an empty database without throwing errors.

* Add items from late 2025-02

* Yuel (Grand)
* Tsukuyomi
* Sennen Goji
* Nightgaze Gale
* Bane of Avidya
* Klesha-Cleaning Dharmachakra
2025-02-27 20:27:43 -08:00
6db5faeb98
Add items from January/February 2025 (#184)
* Add new items

Items from:
- Unite and Fight (January 2025)
- Story Event (January 2025)
- Negima Collab (February 2025)
- January Flash Gala
- January Legend Festival
- February Flash Gala
- February character uncap

Data fixes for
- Chat Noir FLB (rarity was set to a bad value)
- End of year weapons (FLB date not set)

* Fix CSVs

* Fix data update rake task

* Add CSV require in BaseImporter
2025-02-24 16:09:30 -05:00
11db6674fc
fix migrator (#183)
- rename migration so it happens first
- postdeployment database migrator now migrates database and data migrations in chronological order
2025-02-18 01:47:23 -08:00