Keep foreign cron cwd for super_admin via live role resolve and session default.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
oliver 2026-09-10 11:09:56 +08:00
parent 9b8f937a65
commit 7a2a673ac2
9 changed files with 189 additions and 18 deletions

View file

@ -174,13 +174,14 @@ export function resolveToolIdentity(exec, service) {
if (typeof uds?.resolveIdentityForEmpNo === 'function') {
const resolved = uds.resolveIdentityForEmpNo(id)
if (resolved?.empNo) {
const elevated = resolved.role === 'super_admin' || resolved.role === 'fallback_admin'
return {
empNo: String(resolved.empNo),
displayName: String(resolved.displayName || resolved.empNo),
role: resolved.role || 'user',
permissions: {
canViewAllSessions: !!resolved.permissions?.canViewAllSessions,
canCreateWorkspace: !!resolved.permissions?.canCreateWorkspace,
canViewAllSessions: !!(resolved.permissions?.canViewAllSessions || elevated),
canCreateWorkspace: !!(resolved.permissions?.canCreateWorkspace || elevated),
},
workspacePath: resolved.workspacePath || uds.getProvisionedWorkspacePath?.(id) || null,
}