feat(ugc): when each creation was made and how long it took, on the UGC page

The UGC server records how long each successful make took (process_ms on
ugc and ugc_modular_build; migrations sqlite 73, mysql 90). The UGC page
shows it with the time it was made: in the models list's Made column
(sortable, slowest first), in the tiles' tooltips, in the item preview
and in an assembly's References. The gallery can sort by slowest to
make too. Makes from before this are shown without a duration.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Aaron Kimbrell
2026-09-27 20:21:51 -05:00
parent 555ecdc5f7
commit cfc8d33190
20 changed files with 83 additions and 14 deletions

View File

@@ -36,6 +36,7 @@ public:
bool bakeAo{};
uint32_t bricks{}; // models: counted by the UGC server when it made them (0: not yet)
uint32_t triangles{}; // models: of the made mesh's most detailed level (0: not yet)
uint32_t processMs{}; // how long the last successful make took (0: not made, or made before it was timed)
};
// What SearchUgc matches. A number (when set) is matched against ids; text against names
@@ -60,6 +61,7 @@ public:
NAME, // models: the upload's file name; modular builds: the modules
BRICKS, // models: the most bricks first
TRIANGLES, // models: the most triangles first
SLOWEST, // the longest last make first (process_ms)
};
// A page of one kind: all of them or those matching the search (the same matching as SearchUgc), in a state or any