Content
View differences
Updated by Oliver Günther about 5 hours ago
**As an** administrator configuring any work package type (sub-type or plain type) **As** a \[enter role of user\]
**I want to** link a type's PDF and subject configuration to a source type or make it independent \[enter objective\]
**so that** I can reuse an existing set of export templates and subject patterns across many types, or create my own ones \[enter desired result\]
## Scope **Acceptance criteria**
The reuse aspect (`settings_source_id`, resolved by `effective_settings_type`) covers:
* PDF export template configuration (`pdf_export_templates_config`),
* subject configuration and identifier patterns (`patterns`). <br>
It does **not** cover the core type settings, which are inherited from the parent on a sub-type and not editable. **Technical notes**
## Acceptance criteria
* For any type, I can set its PDF and subject configuration to **Linked** (choosing a source type) or **Independent**. A sub-type defaults to Linked to its parent. _(F3-C0)_
* A Linked type's PDF and subject configuration resolve to the source at runtime; when I change the source, every linked type reflects it immediately. _(F3-C1)_
* When I switch this configuration to Independent, the system copies the current source's PDF and subject configuration once and then severs the link. _(F3-C2)_
* The system prevents me from creating a cyclic dependency between these sources. _(F0-C2)_
* The core type settings (name, color, `is_milestone`, `is_in_roadmap`, `is_default`) are never part of this aspect; on a sub-type they are inherited from the parent and read-only. _(F0-C3)_ <br>
## Permissions **Permissions and visibility considerations considerations**
* **To _To whom is this feature visible?** Admins and later project admins (via `:manage_subtypes` for project-owned sub-types). visible?_
* **When _When is it not visible?** Feature flag turned off, without management rights. visible?_
## Translation considerations **Translation considerations**
<figure class="table op-uc-figure_align-center op-uc-figure"><table class="op-uc-table"><thead class="op-uc-table--head"><tr class="op-uc-table--row"><th class="op-uc-table--cell op-uc-table--cell_head"><p class="op-uc-p">English</p></th><th class="op-uc-table--cell op-uc-table--cell_head"><p class="op-uc-p">German</p></th><th class="op-uc-table--cell op-uc-table--cell_head"><p class="op-uc-p">French (verify)</p></th><th class="op-uc-table--cell op-uc-table--cell_head"><p class="op-uc-p">Spanish (verify)</p></th></tr></thead><tbody><tr class="op-uc-table--row"><td class="op-uc-table--cell"><p class="op-uc-p">Linked to {{type}}</p></td><td class="op-uc-table--cell"><p class="op-uc-p">Verknüpft mit {{type}}</p></td><td class="op-uc-table--cell"><p class="op-uc-p">Lié à {{type}}</p></td><td class="op-uc-table--cell"><p class="op-uc-p">Vinculado a {{type}}</p></td></tr><tr class="op-uc-table--row"><td class="op-uc-table--cell"><p class="op-uc-p">Source type</p></td><td class="op-uc-table--cell"><p class="op-uc-p">Quelltyp</p></td><td class="op-uc-table--cell"><p class="op-uc-p">Type source</p></td><td class="op-uc-table--cell"><p class="op-uc-p">Tipo de origen</p></td></tr><tr class="op-uc-table--row"><td class="op-uc-table--cell"><p class="op-uc-p">Use independent configuration</p></td><td class="op-uc-table--cell"><p class="op-uc-p">Unabhängige Konfiguration verwenden</p></td><td class="op-uc-table--cell"><p class="op-uc-p">Utiliser une configuration indépendante</p></td><td class="op-uc-table--cell"><p class="op-uc-p">Usar una configuración independiente</p></td></tr><tr class="op-uc-table--row"><td class="op-uc-table--cell"><p class="op-uc-p">Copy configuration from type (one time)</p></td><td class="op-uc-table--cell"><p class="op-uc-p">Konfiguration einmalig von Typ kopieren</p></td><td class="op-uc-table--cell"><p class="op-uc-p">Copier la configuration depuis un type (une fois)</p></td><td class="op-uc-table--cell"><p class="op-uc-p">Copiar la configuración de un tipo (una vez)</p></td></tr></tbody></table></figure>
## Out * _Key terms and phrases in the key languages_
**Out of scope scope**
* Any third mode (only Linked or Independent for now). <br>
_Set the_ **To be informed/consulted teams** _field to include all teams necessary to be informed of the changes._
**I want to** link a type's PDF and subject configuration to a source type or make it independent
**so that** I can reuse an existing set of export templates and subject patterns across many types, or create my own ones
## Scope
The reuse aspect (`settings_source_id`, resolved by `effective_settings_type`) covers:
* PDF export template configuration (`pdf_export_templates_config`),
* subject configuration and identifier patterns (`patterns`).
It does **not** cover the core type settings, which are inherited from the parent on a sub-type and not editable.
## Acceptance criteria
* For any type, I can set its PDF and subject configuration to **Linked** (choosing a source type) or **Independent**. A sub-type defaults to Linked to its parent. _(F3-C0)_
* A Linked type's PDF and subject configuration resolve to the source at runtime; when I change the source, every linked type reflects it immediately. _(F3-C1)_
* When I switch this configuration to Independent, the system copies the current source's PDF and subject configuration once and then severs the link. _(F3-C2)_
* The system prevents me from creating a cyclic dependency between these sources. _(F0-C2)_
* The core type settings (name, color, `is_milestone`, `is_in_roadmap`, `is_default`) are never part of this aspect; on a sub-type they are inherited from the parent and read-only. _(F0-C3)_
## Permissions
* **To
* **When
## Translation considerations
<figure class="table op-uc-figure_align-center op-uc-figure"><table class="op-uc-table"><thead class="op-uc-table--head"><tr class="op-uc-table--row"><th class="op-uc-table--cell op-uc-table--cell_head"><p class="op-uc-p">English</p></th><th class="op-uc-table--cell op-uc-table--cell_head"><p class="op-uc-p">German</p></th><th class="op-uc-table--cell op-uc-table--cell_head"><p class="op-uc-p">French (verify)</p></th><th class="op-uc-table--cell op-uc-table--cell_head"><p class="op-uc-p">Spanish (verify)</p></th></tr></thead><tbody><tr class="op-uc-table--row"><td class="op-uc-table--cell"><p class="op-uc-p">Linked to {{type}}</p></td><td class="op-uc-table--cell"><p class="op-uc-p">Verknüpft mit {{type}}</p></td><td class="op-uc-table--cell"><p class="op-uc-p">Lié à {{type}}</p></td><td class="op-uc-table--cell"><p class="op-uc-p">Vinculado a {{type}}</p></td></tr><tr class="op-uc-table--row"><td class="op-uc-table--cell"><p class="op-uc-p">Source type</p></td><td class="op-uc-table--cell"><p class="op-uc-p">Quelltyp</p></td><td class="op-uc-table--cell"><p class="op-uc-p">Type source</p></td><td class="op-uc-table--cell"><p class="op-uc-p">Tipo de origen</p></td></tr><tr class="op-uc-table--row"><td class="op-uc-table--cell"><p class="op-uc-p">Use independent configuration</p></td><td class="op-uc-table--cell"><p class="op-uc-p">Unabhängige Konfiguration verwenden</p></td><td class="op-uc-table--cell"><p class="op-uc-p">Utiliser une configuration indépendante</p></td><td class="op-uc-table--cell"><p class="op-uc-p">Usar una configuración independiente</p></td></tr><tr class="op-uc-table--row"><td class="op-uc-table--cell"><p class="op-uc-p">Copy configuration from type (one time)</p></td><td class="op-uc-table--cell"><p class="op-uc-p">Konfiguration einmalig von Typ kopieren</p></td><td class="op-uc-table--cell"><p class="op-uc-p">Copier la configuration depuis un type (une fois)</p></td><td class="op-uc-table--cell"><p class="op-uc-p">Copiar la configuración de un tipo (una vez)</p></td></tr></tbody></table></figure>
## Out
**Out
* Any third mode (only Linked or Independent for now).
_Set the_ **To be informed/consulted teams** _field to include all teams necessary to be informed of the changes._