Merge origin/main into main

Integrate upstream updates while preserving the local analytics dashboards and schema-only migration changes.

Combine user account analysis with upstream user/group usage statistics in separate tabs, retain all migration versions, and keep the deleted audit document removed.

Validation: gateway all-target cargo check, frontend type check and 57 focused tests, 48 migration tests, schema composition checks, and diff whitespace checks.
This commit is contained in:
elky
2026-10-02 11:57:18 +08:00
343 changed files with 27929 additions and 2549 deletions
@@ -600,6 +600,22 @@ fn usage_matches_summary_query(
return false;
}
}
if let Some(user_ids) = query.user_ids.as_deref() {
if !item
.user_id
.as_ref()
.is_some_and(|user_id| user_ids.contains(user_id))
{
return false;
}
}
if query
.provider_names
.as_ref()
.is_some_and(|names| !names.contains(&item.provider_name))
{
return false;
}
if let Some(provider_name) = query.provider_name.as_deref() {
if item.provider_name != provider_name {
return false;
@@ -627,6 +643,22 @@ fn usage_matches_time_series_query(
return false;
}
}
if let Some(user_ids) = query.user_ids.as_deref() {
if !item
.user_id
.as_ref()
.is_some_and(|user_id| user_ids.contains(user_id))
{
return false;
}
}
if query
.provider_names
.as_ref()
.is_some_and(|names| !names.contains(&item.provider_name))
{
return false;
}
if let Some(provider_name) = query.provider_name.as_deref() {
if item.provider_name != provider_name {
return false;
@@ -998,6 +1030,22 @@ fn usage_matches_leaderboard_query(
return false;
}
}
if let Some(user_ids) = query.user_ids.as_deref() {
if !item
.user_id
.as_ref()
.is_some_and(|user_id| user_ids.contains(user_id))
{
return false;
}
}
if query
.provider_names
.as_ref()
.is_some_and(|names| !names.contains(&item.provider_name))
{
return false;
}
if let Some(provider_name) = query.provider_name.as_deref() {
if item.provider_name != provider_name {
return false;