Mothra design document: "Created by ... on behalf of ..."
Feature request (on 2007-12-10) for Mothra to allow project administrators to create issues on behalf of other people. This means the issue is created in a timely manner but the correct person is then required to close the issue when it has been resolved.
The obvious approach is simply to record the issue creator as the desired user. This is confusing: the apparent creator owns the issue and may get nagged to close it, and the "real" creator is not stored anywhere and thus cannot be shown.
First option then is to add a new field named "real creator" to Mothra. This seems quite ad hoc and implies things like "real assignee" and "real status" for increasingly obscure cases.
Another new-field option is "person assigned to close issue" (but presumably with a better name, perhaps "closer"). This field would be the same as "creator" for normal issues. This approach is conceptually neat but would make Mothra's internals more complex for what is hopefully a relatively rare case: who can now close an issue, the real creator or the "issue closer"? Who owns the issue? It's worth noting that many of these problems go away (in favour of the assigned closer) if only project tutelaries are allowed to reassign the issue creator.
An alternative approach which would require less modification to core Mothra is to record the issue creator as normal, then change the creator to the appropriate user. This would record a change in the issue's history log, and would leave the real creator as a watcher. This could be implemented as a plug-in.
Aspects of the change
- User interface: Add a new combo box to the "new issue" interface for user assignation
- Backend - issue created: When a new issue is created, the issue is stored with "creator" set to the apparent creator. Both the apparent and real creators are added as watchers. A fake issue field change item is added.
- Backend - issue modified: nothing special is required.