329 Commits

Author SHA1 Message Date
a5711cdc30 backend: test for exact DisplayName match
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
- The ListMaps method is unexpectedly finding DisplayName substrings
2026-03-24 19:39:27 -07:00
4a399cc2ea format
Some checks failed
continuous-integration/drone/push Build is failing
2026-03-24 19:37:53 -07:00
4e3048e272 Add Combobulate Endpoint (#338)
Some checks failed
continuous-integration/drone/push Build is failing
continuous-integration/drone/pr Build is passing
Adds the ability to seed a single map for combobulation.

Reviewed-on: #338
Co-authored-by: Rhys Lloyd <krakow20@gmail.com>
Co-committed-by: Rhys Lloyd <krakow20@gmail.com>
2026-03-05 17:12:05 +00:00
2118a8ab35 Add string search for display_name
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2026-03-03 20:55:05 -05:00
277cd819c2 Categorize Errors to avoid HTTP 500 (#326)
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
- Depends on #325 (lazyness)
- Closes #148

No guarantees we won't see 500s, but I tried ok

Reviewed-on: #326
Co-authored-by: Rhys Lloyd <krakow20@gmail.com>
Co-committed-by: Rhys Lloyd <krakow20@gmail.com>
2026-03-03 17:51:58 +00:00
c22717831d Check for maps with the exact same name on submit (#325)
All checks were successful
continuous-integration/drone/push Build is passing
Closes #273.
Could be better but meh.

Reviewed-on: #325
Co-authored-by: Rhys Lloyd <krakow20@gmail.com>
Co-committed-by: Rhys Lloyd <krakow20@gmail.com>
2026-03-03 17:49:08 +00:00
501b0933e6 Remove unused struct
Some checks failed
continuous-integration/drone/pr Build is failing
continuous-integration/drone/push Build is passing
2026-03-01 20:11:22 -05:00
078a3e4c4a Add map seed endpoint
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2026-03-01 17:41:11 -05:00
c788344bf3 Add snfm download endpoints
All checks were successful
continuous-integration/drone/push Build is passing
2026-03-01 16:28:37 -05:00
83e257a4d5 Change rettention policy
Some checks failed
continuous-integration/drone/push Build is failing
2026-03-01 13:39:02 -05:00
3e77edb1cc Update Submission Button (#321)
Some checks failed
continuous-integration/drone/push Build is failing
Closes #318

Reviewed-on: #321
Reviewed-by: itzaname <itzaname@noreply@itzana.me>
Co-authored-by: Rhys Lloyd <krakow20@gmail.com>
Co-committed-by: Rhys Lloyd <krakow20@gmail.com>
2026-01-16 21:12:55 +00:00
0b7ca534f3 Add Maptest Integration GRPC Controllers (#317)
Some checks failed
continuous-integration/drone/push Build is failing
Creates a GRPC controller for Submissions and Mapfixes.  This is intended to be used from the AOR group games via game-rpc running in "maptest" mode.

Reviewed-on: #317
Co-authored-by: Rhys Lloyd <krakow20@gmail.com>
Co-committed-by: Rhys Lloyd <krakow20@gmail.com>
2026-01-07 20:32:10 +00:00
755616f46c backend: allow request changes for uploaded models 2026-01-06 11:10:37 -08:00
f49e27e230 Support editing map fix descriptions (#309)
All checks were successful
continuous-integration/drone/push Build is passing
The description can be edited by the **submitter** only if the status is Changes Requested or Under Construction.

<img width="734" alt="image.png" src="attachments/9fd7b838-f946-4091-a396-ef66f5e655bc">
<img width="724" alt="image.png" src="attachments/f65f059e-af97-448a-9627-fee827d30e59">

Reviewed-on: #309
Reviewed-by: Rhys Lloyd <quaternions@noreply@itzana.me>
Co-authored-by: itzaname <me@sliving.io>
Co-committed-by: itzaname <me@sliving.io>
2025-12-27 23:40:42 +00:00
7c5d8a2163 Add script review page (#304)
All checks were successful
continuous-integration/drone/push Build is passing
Closes !2

Added review dashboard button as well.

<img width="1313" alt="image.png" src="attachments/a2abd430-7ff6-431a-9261-82e026de58f5">

![image.png](/attachments/e1ba3536-2869-4661-b46c-007ddaff8f3e)

Reviewed-on: #304
Reviewed-by: Rhys Lloyd <quaternions@noreply@itzana.me>
Co-authored-by: itzaname <me@sliving.io>
Co-committed-by: itzaname <me@sliving.io>
2025-12-27 19:56:19 +00:00
8a216c7e82 Add username api
All checks were successful
continuous-integration/drone/push Build is passing
2025-12-25 20:55:15 -05:00
7d1c4d2b6c Add stats endpoint
Some checks failed
continuous-integration/drone Build was killed
continuous-integration/drone/push Build is passing
2025-12-25 18:58:52 -05:00
ca401d4b96 Add batch thumbnail endpoint (#285)
All checks were successful
continuous-integration/drone/push Build is passing
Step 1 of eliminating nextjs is adding a way to query thumbnails from roblox since nextjs handles that. This implements a batch endpoint and caching to do that. Bonus: thumbnails will actually work once we start using this.

Reviewed-on: #285
Co-authored-by: itzaname <me@sliving.io>
Co-committed-by: itzaname <me@sliving.io>
2025-12-25 22:56:59 +00:00
ce9b26378c submissions: Fix Maps.Update Date
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2025-09-28 19:09:59 -07:00
6ccc56cc55 submissions: fix release date mixup
All checks were successful
continuous-integration/drone/push Build is passing
2025-09-23 16:31:50 -07:00
b5a367e159 Return OperationID from release-submissions (#278)
The release-submissions endpoint creates an operation, but does not return it.

Reviewed-on: #278
Co-authored-by: Rhys Lloyd <krakow20@gmail.com>
Co-committed-by: Rhys Lloyd <krakow20@gmail.com>
2025-09-23 15:31:34 -07:00
6b05836a56 openapi: increase max script path length
All checks were successful
continuous-integration/drone/push Build is passing
2025-09-23 15:12:20 -07:00
51ba05df69 backend: remove mapfixes migrate endpoint
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2025-08-15 23:20:08 -07:00
30b594b345 backend: fix completely wrong gorm thing
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2025-08-15 23:05:40 -07:00
ab361dffd1 backend: fix completely wrong gorm thing
All checks were successful
continuous-integration/drone/push Build is passing
2025-08-15 23:01:37 -07:00
d30a94e42d backend: add mission interface method
All checks were successful
continuous-integration/drone/push Build is passing
2025-08-15 22:34:22 -07:00
55b79b8f9b backend: typo
Some checks failed
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is failing
2025-08-15 19:40:24 -07:00
2878467cbf backend: add forgotten permission 2025-08-15 19:35:28 -07:00
231c11632b openapi: add missing fields 2025-08-15 19:01:20 -07:00
de6163093f backend: add missing list query 2025-08-15 18:39:43 -07:00
d7456d500b backend: create mapfixes migration code UPLOADED -> RELEASED
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2025-08-15 17:48:45 -07:00
1a558f35cf openapi: generate 2025-08-15 17:14:05 -07:00
10507c62ab openapi: generate 2025-08-14 19:48:07 -07:00
0d18167b03 remove SubmissionStatusReleasing 2025-08-14 19:48:07 -07:00
0cb419430a backend: make release pipeline internals 2025-08-14 19:48:07 -07:00
3c9d04d637 openapi: generate 2025-08-12 16:18:15 -07:00
25f6c9e086 backend: tweak status sets to reflect new statuses
All checks were successful
continuous-integration/drone/push Build is passing
2025-08-12 16:05:33 -07:00
a62a231b0a backend: new statuses for mapfix and submission 2025-08-12 16:05:13 -07:00
34bc623ce6 make UserInfoHandle.HasRoles public 2025-08-07 16:08:47 -07:00
9999d1ff87 fix docs redirect
Some checks failed
continuous-integration/drone/pr Build is failing
continuous-integration/drone/push Build is passing
2025-08-06 20:15:53 -07:00
08753d36b4 Cut Down Maps Fields (#257)
Some checks failed
continuous-integration/drone/pr Build is failing
continuous-integration/drone/push Build is passing
Remove usages of Creator & Date, add Thumbnail.

Reviewed-on: #257
Co-authored-by: Rhys Lloyd <krakow20@gmail.com>
Co-committed-by: Rhys Lloyd <krakow20@gmail.com>
2025-08-07 02:32:22 +00:00
d196da949c Public API (#253)
Closes #229

This is a MVP and only includes maps.

Reviewed-on: #253
Reviewed-by: itzaname <itzaname@noreply@itzana.me>
Co-authored-by: Rhys Lloyd <krakow20@gmail.com>
Co-committed-by: Rhys Lloyd <krakow20@gmail.com>
2025-08-05 23:08:18 -07:00
ac05f4acdc submissions: remove migration operation
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2025-07-25 23:09:03 -07:00
061b7b2a01 openapi: generate 2025-07-25 23:08:07 -07:00
d35c331b76 submissions: fill out new fields
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2025-07-25 19:19:39 -07:00
9ce8b75f0f openapi: generate
All checks were successful
continuous-integration/drone/push Build is passing
2025-07-25 19:16:21 -07:00
2578a74ddb submissions: use unsigned ints in maps struct
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2025-07-23 23:18:54 -07:00
a4cefd263d submissions: maps: guard against null pointers
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2025-07-23 22:19:42 -07:00
bdfd1a0b23 submissions: temporary migration endpoint
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2025-07-23 20:04:39 -07:00
859004f264 openapi: generate 2025-07-23 20:04:39 -07:00