[Bug] Adjust tag columns in nodes list #1180

Open
opened 2025-12-29 02:28:44 +01:00 by adam · 0 comments
Owner

Originally created by @nblock on GitHub (Dec 21, 2025).

Is this a support request?

  • This is not a support request

Is there an existing issue for this?

  • I have searched the existing issues

Current Behavior

Currently, headscale nodes list -t show the columns ForcedTags, InvalidTags, and ValidTags:

$ headscale nodes list -t
ID | Hostname | Name | MachineKey | NodeKey | User           | IP addresses                  | Ephemeral | Last seen           | Expiration | Connected | Expired | ForcedTags | InvalidTags | ValidTags
1  | n2       | n2   | [0x2Hd]    | [W2y+g] | tagged-devices | 100.64.0.1, fd7a:115c:a1e0::1 | false     | 2025-12-21 11:54:34 | N/A        | online    | no      | tag:bar    |             |          
   |          |      |            |         |                |                               |           |                     |            |           |         | tag:foo    |             |      

During testing, I noticed that only ForcedTags is used. We should probably:

  • Rename ForcedTags to Tags
  • Remove ValidTags

The InvalidTags column (or some better name) could be used for tags that were once referenced in tagOwners and are still used by nodes but were deleted since then from tagOwners.

In SaaS, they show deleted tags (those tags are no longer part of the tagOwners map) as gray. In the screenshots, tag:bar was deleted.

Image
Image
Image

The node still has them: tailscale status --json | jq .Self.Tags

Expected Behavior

Adjust tag columns to the new implementation

Steps To Reproduce

  1. Add tags to tagOwners in policy
  2. Register node with tags
  3. Remove tags from tagOwners
  4. Inspect headscale nodes list -t

Environment

- OS: Debian 13
- Headscale version: 0.28.0-beta.1
- Tailscale version: 1.92.3

Runtime environment

  • Headscale is behind a (reverse) proxy
  • Headscale runs in a container

Debug information

none

Originally created by @nblock on GitHub (Dec 21, 2025). ### Is this a support request? - [x] This is not a support request ### Is there an existing issue for this? - [x] I have searched the existing issues ### Current Behavior Currently, `headscale nodes list -t` show the columns `ForcedTags`, `InvalidTags`, and `ValidTags`: ```bash $ headscale nodes list -t ID | Hostname | Name | MachineKey | NodeKey | User | IP addresses | Ephemeral | Last seen | Expiration | Connected | Expired | ForcedTags | InvalidTags | ValidTags 1 | n2 | n2 | [0x2Hd] | [W2y+g] | tagged-devices | 100.64.0.1, fd7a:115c:a1e0::1 | false | 2025-12-21 11:54:34 | N/A | online | no | tag:bar | | | | | | | | | | | | | | tag:foo | | ``` During testing, I noticed that only `ForcedTags` is used. We should probably: - Rename `ForcedTags` to `Tags` - Remove `ValidTags` The `InvalidTags` column (or some better name) could be used for tags that were once referenced in `tagOwners` and are still used by nodes but were deleted since then from `tagOwners`. In SaaS, they show deleted tags (those tags are no longer part of the `tagOwners` map) as gray. In the screenshots, `tag:bar` was deleted. <img width="250" height="190" alt="Image" src="https://github.com/user-attachments/assets/cc02b75b-215e-4c1b-be4a-1b82fe759e1f" /> --- <img width="428" height="212" alt="Image" src="https://github.com/user-attachments/assets/4ebc30bf-ef6c-40e1-ab10-e9f4a5c8e8f6" /> --- <img width="543" height="201" alt="Image" src="https://github.com/user-attachments/assets/a7523bfb-3bb0-4253-a875-386f28583dd4" /> The node still has them: `tailscale status --json | jq .Self.Tags` ### Expected Behavior Adjust tag columns to the new implementation ### Steps To Reproduce 1. Add tags to `tagOwners` in policy 2. Register node with tags 3. Remove tags from `tagOwners` 4. Inspect `headscale nodes list -t` ### Environment ```markdown - OS: Debian 13 - Headscale version: 0.28.0-beta.1 - Tailscale version: 1.92.3 ``` ### Runtime environment - [ ] Headscale is behind a (reverse) proxy - [ ] Headscale runs in a container ### Debug information none
adam added the bugno-stale-bottagsCLI labels 2025-12-29 02:28:44 +01:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/headscale#1180