834192dc11
fix /jobs/:id/skills to return job's own skills, add emp_skills endpoint
2025-12-15 14:30:32 -08:00
b458335e31
add update endpoint for jobs
2025-12-15 14:21:25 -08:00
b91ef0a4dd
standardize links format in blueprints
...
return wiki: {en, ja} + gamewith, kamigame at top level
2025-12-15 12:47:11 -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
f28e61b303
add Holiday to CHARACTER_SERIES enum
2025-12-15 09:50:53 -08:00
acf8010669
accept wiki_raw in entity create/update
2025-12-14 21:50:30 -08:00
f589f58eb5
batch_preview: accept pre-fetched wiki_data from client
2025-12-14 13:12:25 -08:00
4d75835c71
move WikiError into Granblue namespace to fix production autoloading
2025-12-14 12:41:07 -08:00
1054920fcb
add gbf series mapping for weapon/summon imports
2025-12-14 11:58:42 -08:00
e1d212c764
update summon model and blueprint for series lookup
2025-12-14 11:58:34 -08:00
c4e42b0968
update character model and blueprint for series lookup
2025-12-14 11:58:30 -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
349b542c0e
fix rescue_from order so StandardError is checked last
2025-12-14 01:48:11 -08:00
d4131cf51d
allow :retired param in membership and phantom player controllers
2025-12-14 01:48:06 -08:00
371f2a29dd
fix artifact import: preload queries, handle symbol keys
2025-12-14 01:42:06 -08:00
5666ee300c
fix import_params to pass nested game data
2025-12-14 01:42:05 -08:00
513f8c6a66
use 1-based values for collection_privacy enum
2025-12-14 01:23:42 -08:00
07f23e2b74
add /users/me settings endpoint
2025-12-14 01:23:37 -08:00
f4ef04881e
add bulk_create endpoint for phantom players
...
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-13 23:33:49 -08:00
fb253adf45
add catch-all exception handler to log 500 errors
2025-12-13 21:41:29 -08:00
4224dcb257
move recruited_by to separate view to avoid N+1
2025-12-13 21:40:42 -08:00
981feff814
add grid_artifact and weapon_series to party show includes
2025-12-13 21:39:47 -08:00
56280eb0ff
preload crews and favorites to fix remaining N+1s
2025-12-13 21:38:54 -08:00
6f3f0d92ff
fix N+1 queries in parties index
2025-12-13 21:32:37 -08:00
272f612357
add import services for characters, weapons, summons
...
parses game JSON inventory data and creates collection records
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-13 20:54:38 -08:00
c498278c89
fix array extraction order in artifact import
2025-12-13 20:12:00 -08:00
36dc4207c9
increase awakening_level max to 20
2025-12-13 20:11:53 -08:00
aa198f072b
add import endpoints to collection controllers
2025-12-13 20:10:18 -08:00
860177c0a4
add show_gamertag to user
2025-12-13 20:09:52 -08:00
534414939b
add current_membership to crew response
2025-12-13 20:09:44 -08:00
4db5f4224e
return artifact enum values as integers
2025-12-13 20:09:34 -08:00
0a069c0324
fix N+1 query in by_event: include user for membership
2025-12-04 03:05:53 -08:00
26718b5a3e
gw event improvements: status field, members_during_event endpoint
2025-12-04 03:02:35 -08:00
7d27d3c8b1
allow officers to update joined_at on members and phantoms
2025-12-04 03:02:27 -08:00
0337bc1e92
add by-event score endpoints that auto-create participation
2025-12-04 03:02:22 -08:00
b4f4f9c304
fix total_score to sum individual honors instead of crew scores
2025-12-04 03:02:18 -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
50e2318f59
add filter support to crew members endpoint
...
GET /crew/members now accepts ?filter param:
- active (default): active members only
- retired: retired members only
- phantom: phantom players only
- all: all members + phantoms
Response includes both members[] and phantoms[] arrays.
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-04 00:07:22 -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
a3a0138526
add request specs for crew controllers (phases 1-2)
...
- add crews_spec.rb (18 examples)
- add crew_memberships_spec.rb (13 examples)
- add crew_invitations_spec.rb (15 examples)
- fix crew_memberships authorize_crew_captain! as before_action
- update crew_invitations factory to auto-set invited_by officer
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-03 23:47:25 -08:00
7f57c2c3ee
fix gw controller params and add request specs
...
- use gw_participation_id param (matches route param name)
- use gw_crew_score root key for consistency
- add crew_gw_participations request specs
- add gw_crew_scores request specs
- add gw_individual_scores request specs
- fix batch authorization to return early
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-03 23:40:38 -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
c3e992a0dd
add gamertag to user blueprint
2025-12-03 23:01:13 -08:00
872b6fdb59
add crew specs and fix error handling
...
- add transactional fixtures to rails_helper for test isolation
- restructure crew errors to CrewErrors module for Zeitwerk
- add rescue_from for CrewErrors::CrewError in api_controller
- add model specs for Crew and CrewMembership (34 examples)
- add controller specs for crews and memberships (28 examples)
- add crew-related specs to User model (22 examples)
- add factories for crews and crew_memberships
2025-12-03 22:51:34 -08:00
274881e894
add collection refs and out_of_sync to grid blueprints
2025-12-03 22:48:32 -08:00
233dd4fe95
add sync endpoints and collection_id params to controllers
2025-12-03 22:46:17 -08:00
a76d0719c9
add collection refs and sync methods to grid models
2025-12-03 22:42:29 -08:00
e98e59491d
add crew controllers, blueprints, routes, and errors
...
- CrewsController: create, show, update, members, leave, transfer_captain
- CrewMembershipsController: update, destroy, promote, demote
- CrewAuthorizationConcern for member/officer/captain checks
- blueprints for serialization
- custom error classes for crew operations
2025-12-03 22:41:25 -08:00