myxce/src
Rongsong Shen 4a38bb3ca9
fix(apiserver): enforce self_ug job scopes and accept project filters (bug-1934, bug-1935)
bug-1934: every job-permission check read a single scope and compared it
only with "self", so a job:view or job:control grant scoped to self_ug acted
like "all" (list, get by ID, control), and self + self_ug collapsed to self.
userJobScope() now collects all of a user's grants of a job permission
before deduplication and adds them up (all; self; self_ug = the user and
everyone sharing a user group). The job list appends a submit_user filter
for narrower scopes, get-by-ID keeps covered rows in a new slice (removing
from the ranged slice skipped rows) and answers 403, both control paths
and job output check the owner against the scope. User groups now reach
the apiserver: the config push converts cluster_config_t.ugroups and
OnUserGroupsUpdated() replaces the new store (nested groups, all,
exclusions). The default basic_user now also sees its user-group mates'
jobs, as its configuration says.

bug-1935: project_name and license_project are accepted job filters, so
xcecli jobs list -P works.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-10 06:56:57 +00:00
..
autoscaler remove extralib 2026-09-04 11:24:43 +08:00
configs feat(xceadmin): validate percent-based limit values are in [0.0, 1.0] (bug-1833) 2026-09-20 10:50:21 +00:00
controller fix(controller,apiserver,xcecli): expose job CPU peak and efficiency to the apiserver and xcecli (bug-1736) 2026-10-06 13:54:43 +00:00
docs fix(frontend): peek and restart take <array-id>[k] and written job IDs 2026-10-02 09:42:27 +00:00
frontend fix(apiserver): enforce self_ug job scopes and accept project filters (bug-1934, bug-1935) 2026-10-10 06:56:57 +00:00
harness fix(harness): xce_test fake worker answers the controller's job-state query (bug-1922) 2026-10-08 03:03:09 +00:00
include fix(scheduler): cache hits keep the full pend reason; sim uses the cache (bug-1932) 2026-10-09 08:02:18 +00:00
lib fix(scheduler): record each pend reason once per job (bug-1927) 2026-10-09 06:30:58 +00:00
nixSupport remove extralib 2026-09-04 11:24:43 +08:00
scheduler fix(scheduler): resolve limit host and project scopes against their own groups (bug-1933) 2026-10-10 03:42:59 +00:00
schema fix(controller,apiserver,xcecli): expose job CPU peak and efficiency to the apiserver and xcecli (bug-1736) 2026-10-06 13:54:43 +00:00
tools fix: close controller-peers-env-fallback validation gaps (bug-1909..1912) 2026-10-03 13:06:58 +00:00
worker fix: close controller-peers-env-fallback validation gaps (bug-1909..1912) 2026-10-03 13:06:58 +00:00
xceadmin build(xceadmin): run the live E2E tests against this build's xce_controller 2026-10-09 06:41:09 +00:00
flake.lock remove extralib 2026-09-04 11:24:43 +08:00
flake.nix remove extralib 2026-09-04 11:24:43 +08:00
meson.build feat(xce-harness-component): relocate xce_test into standalone harness component 2026-09-14 05:08:15 +00:00
meson.options feat(dirty-content-fingerprint): add dirty_fingerprint meson option and C define 2026-08-21 03:54:37 +00:00