Dev docs: Document user contribution mapping component

As the new user contribution mapping solution should be easily extendable to other importers, new and already existing ones, we could consider it a component of the "Importer framework".

We should document how to integrate it with importers (dev docs). User-facing docs will be done in User docs: Improved user contribution mapping (#473042 - closed).

Proposal

Add a section to our development docs about how user mapping works.

The section should be linked from here https://docs.gitlab.com/ee/development/feature_development.html#import-and-export.

There's a flow diagram at https://gitlab.com/gitlab-com/gl-security/product-security/appsec/appsec-reviews/-/issues/236 that could be used or refactored for the docs.

The documentation must:

  • Describe the code classes involved.
  • Include instructions for a developer on how to stage a model rename using multiple releases and placeholder reference aliasing #467522 (comment 2003694538). We should then also update the test message in spec/lib/import/placeholder_reference_alias_resolver_spec.rb to link to directly to those docs.
  • If adding a new importer, to ensure LoadPlaceholderReferencesWorker knows how to fail the import !160289 (comment 2012760082).

Some good examples of developer documentation include:

Edited by 🤖 GitLab Bot 🤖