Skip to content

Comments

fix(queue): System user queue items show blank instead of <hidden> for non-admin users#63

Merged
lstein merged 4 commits intofeature/multiuserfrom
copilot/fix-queue-items-visibility
Feb 20, 2026
Merged

fix(queue): System user queue items show blank instead of <hidden> for non-admin users#63
lstein merged 4 commits intofeature/multiuserfrom
copilot/fix-queue-items-visibility

Conversation

Copy link

Copilot AI commented Feb 20, 2026

Summary

Non-admin users viewing queue items owned by the legacy "System" user (single-user mode history) saw blank parameter fields instead of <hidden>, unlike items from other users which correctly displayed the hidden indicator.

The backend was already sanitizing System items correctly (clearing field_values, session.graph, workflow). The bug was purely in the frontend: QueueItemComponent.tsx had an explicit item.user_id !== SYSTEM_USER_ID carve-out that suppressed the <hidden> label for System-owned items.

Fix:

  • QueueItemComponent.tsx: Replace the item.user_id !== SYSTEM_USER_ID check with the correct ownership/admin check — show <hidden> whenever field_values is null, the viewer is not an admin, and the item doesn't belong to the current user. This uniformly covers System items and any other user's items.
// Before — System items silently showed nothing
{!item.field_values && item.user_id !== SYSTEM_USER_ID && (

// After — consistent with all other users' items
{!item.field_values && !currentUser?.is_admin && item.user_id !== currentUser?.user_id && (
  • test_session_queue_sanitization.py: Added two tests covering the System-user case — non-admin gets sanitized data, admin gets full data.

Also noted (not fixed here): a stale comment in migration_27.py references "migration 25" for System user creation, which no longer corresponds to the correct migration number.

Related Issues / Discussions

QA Instructions

In multiuser mode with an existing single-user database (queue items with user_id = 'system'):

  1. Log in as a non-admin user.
  2. Open the Queue tab — System user items should be listed.
  3. Verify parameter fields show italic <hidden> text, not blank.
  4. Log in as an admin — System user items should show full parameters.

Merge Plan

Checklist

  • The PR has a short but descriptive title, suitable for a changelog
  • Tests added / updated (if applicable)
  • ❗Changes to a redux slice have a corresponding migration
  • Documentation added / updated (if applicable)
  • Updated What's New copy (if doing a release after this PR)
Original prompt

This section details on the original issue you should resolve

<issue_title>[bug]: Non-admin users should not be able to see queue items from System</issue_title>
<issue_description>### Is there an existing issue for this problem?

  • I have searched the existing issues

Install method

Invoke's Launcher

Operating system

Linux

GPU vendor

Nvidia (CUDA)

GPU model

No response

GPU VRAM

No response

Version number

feature/multiuser branch

Browser

No response

System Information

No response

What happened

I took a preexisting InvokeAI root and database, and changed it from a single-user instance to a multiuser instance by adding multiuser: true to the invokeai.yaml config file. I then logged into invoke as an unprivileged (non-admin) user. I found that I could see the details of earlier generations in the queue tab that were owned by the legacy "System" user.

What you expected to happen

I expect that generation parameters of queue items owned by System, Admin and other users will be censored (for privacy) for non-admin users. Right now generation parameters by other non-admin users are censored, but System details are visible.

The Admin user should continue to see all queue items and their generation parameters.

How to reproduce the problem

No response

Additional context

No response

Discord username

No response</issue_description>

Comments on the Issue (you are @copilot in this section)


💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.

…for non-admin users

Co-authored-by: lstein <111189+lstein@users.noreply.github.com>
Copilot AI changed the title [WIP] Fix visibility of queue items for non-admin users fix(queue): System user queue items show blank instead of <hidden> for non-admin users Feb 20, 2026
Copilot AI requested a review from lstein February 20, 2026 04:32
@lstein lstein marked this pull request as ready for review February 20, 2026 04:39
@lstein lstein merged commit e23a1e4 into feature/multiuser Feb 20, 2026
19 of 25 checks passed
@lstein lstein deleted the copilot/fix-queue-items-visibility branch February 20, 2026 04:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants