Page MenuHomePhabricator

Tool creation and toolinfo create/edit forms are the same causing confusion about field mutability/use
Closed, ResolvedPublic


  • I had a tool whose "Unique tool name" (and LDAP name) was "asdf";
  • I tried to change its ID by editing the "Unique tool name" in the toolinfo edit form. The unique name did change to the new name, "primerpedia", but the LDAP name remained "asdf" (see T223597).
  • Because of that, I tried to create a new tool that would have the correct LDAP name.
  • In the creation tool, I put "primerpedia" in the "Unique tool name" field. I submitted the form without errors and the new tool was created with the "primerpedia" LDAP name.
  • When editing the toolinfo for the new tool, the "Unique tool name" field appeared with "toolforge." prepended.

I would have preferred the tool creation form to warn me that this was going to change and offer me a choice, rather than silently resolve the collision.

Event Timeline

bd808 added a comment.May 19 2019, 9:59 AM

This is basically a case of poor user interface design making things confusing for you. The toolinfo records are separate and distinct from the actual tool accounts. Any tool account can have 0-N toolinfo records associated with it. These records are purely for the purpose of advertising some aspect of the tool account on Hay's Directory and the 'admin' tool interfaces. The "unique tool name" is a part of the toolinfo.json standard established by Hay's Directory. In an attempt to help ensure the globally unique constraint of that specification, the toolinfo records created via Striker default to using the "toolforge." prefix.

Understood, @bd808. I suggest keeping this issue open to track clarification of that UI so this confusion no longer happens for others. In the opening comment I suggested two ways that IMO could make the interface clearer.

I think the root problem here is that I used the same form to control two different actions. When it is used to create a new tool, the form does validate that the tool account name is unique. After a tool has been created, the same form is used to create/edit toolinfo records associated with the tool account. Seeing this through your eyes in this task and the related T223597 this seems like a really poor choice I made. As the developer & product owner I knew what I was expecting, but the UI does not make the related but separate concerns clear to the user.

bd808 renamed this task from Tool creation form silently allows using a unique name that already exists to Tool creation and toolinfo create/edit forms are the same causing confusion about field mutability/use.May 23 2019, 10:38 PM

Change 616924 had a related patch set uploaded (by BryanDavis; owner: Bryan Davis):
[labs/striker@master] Differentiate tool and toolinfo forms

bd808 claimed this task.Jul 28 2020, 11:20 PM
bd808 moved this task from Backlog to Doing on the Striker board.
Restricted Application added a project: User-bd808. · View Herald TranscriptJul 28 2020, 11:20 PM

Change 616924 merged by jenkins-bot:
[labs/striker@master] Differentiate tool and toolinfo forms

bd808 moved this task from To Do to Needs Review/Feedback on the User-bd808 board.Aug 3 2020, 1:10 AM

Change 623075 had a related patch set uploaded (by BryanDavis; owner: Bryan Davis):
[labs/striker/deploy@master] Bump striker and wheels sub modules

Change 623075 merged by jenkins-bot:
[labs/striker/deploy@master] 2020-09-02 release

Mentioned in SAL (#wikimedia-operations) [2020-09-02T21:47:59Z] <bd808@deploy1001> Finished deploy [striker/deploy@3c2090a]: Deploying r20200902 tag (T198114, T223610, T245804, T144111, T261810) (duration: 01m 34s)

bd808 closed this task as Resolved.Sep 2 2020, 10:11 PM