0dc96ab6b1
CI / benchmark-publish (pull_request) Has been skipped
CI / build (pull_request) Successful in 38s
CI / lint (pull_request) Successful in 39s
CI / quality (pull_request) Successful in 38s
CI / helm (pull_request) Successful in 35s
CI / push-validation (pull_request) Successful in 38s
CI / typecheck (pull_request) Successful in 56s
CI / security (pull_request) Successful in 1m2s
CI / e2e_tests (pull_request) Successful in 3m22s
CI / unit_tests (pull_request) Successful in 6m33s
CI / integration_tests (pull_request) Successful in 6m38s
CI / docker (pull_request) Successful in 32s
CI / coverage (pull_request) Successful in 11m32s
CI / status-check (pull_request) Successful in 1s
CI / benchmark-regression (pull_request) Successful in 59m27s
Bug #7373 found that PermissionService.is_local_mode() reads the CLEVERAGENTS_SERVER_MODE environment variable on every permission check call. This creates a TOCTOU vulnerability: if any code path can modify os.environ during a session, the security mode can be changed mid-session, bypassing permission enforcement. Added a 'Security mode initialization contract' to the Security section clarifying that: - Deployment mode (local vs. server) MUST be determined once at service initialization time and cached - Never re-read from environment variables on each permission check - PermissionService and any other mode-gating service must cache at init Refs: bug #7373 (PermissionService.is_local_mode() TOCTOU vulnerability)