split_composition_entity
Split an ancestor-owned entity down to selected descendant models, duplicating attached state and soft-deleting the original. Use when an entity is descendant-specific.
Instructions
Push an ancestor-owned entity down to one or more descendants and soft-delete the ancestor's copy. Mutates state across the ancestor + every target descendant.
Inverse of lift_composition_entity. Use when an entity that
currently lives on an ancestor is in fact descendant-specific and
should be modeled separately per descendant — the operator chooses
which descendants take a copy. A new local id is minted on each
target; attached state on the ancestor's entity (assertions, jira
mappings, risk acceptances, etc.) is duplicated to every target.
The route's model_id IS the ancestor (the entity being split lives
on it). Each affected model (ancestor + every target descendant) bumps
version and emits a model_refined activity event; a structured
split_applied event with the full split_event payload lands on
the ancestor. The audit pack surfaces this under split_history.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| kind | Yes | Entity kind — one of ``"assets"``, ``"attackers"``, ``"components"``. | |
| model_id | Yes | Ancestor model id — the entity to split lives here. | |
| server_version | Yes | ||
| ancestor_local_id | Yes | Local id of the entity on the ancestor. | |
| target_descendants | Yes | Non-empty list of descendant model ids that should each take a copy. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||