Create asset lifecycle event
create_asset_lifecycle_eventCreate a facility lifecycle strategy event. Events attach to an asset-type SCOPE - exactly ONE of asset_type_id or asset_type_group_id - never to individual assets; an asset resolves its type's own strategy first, else its type group's. Replacement is NOT an event (it stays the renewal forecast + replacement value) - model the interventions BEFORE replacement: roof recoats, boiler retubes, overhauls. Resolve type ids with list_asset_types / list_asset_type_groups, and list existing events first to reuse a scope. Requires asset_lifecycle_events:write scope.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Event name (required, e.g. "Roof recoat") | |
| fixed_cost | No | Fixed cost per application (current dollars, never indexed) | |
| sort_order | No | Evaluation order within the strategy | |
| cost_source | No | Provenance of the cost ("Engineering 2026", a tender reference) | |
| event_class | Yes | Event type - preventative maintenance or rehabilitation | |
| asset_type_id | No | Asset type the strategy scope applies to (exactly one of the two scope ids) | |
| impact_method | Yes | Effect: add years of life, or reset condition to a value | |
| impact_reset_to | No | Condition after the event (required when impact_method is reset_condition) | |
| work_generation | No | What a due application of this event becomes when created from the interventions list: none (plan only, default), work_order, or project. Nothing is created on a schedule. | |
| impact_add_years | No | Years added (required when impact_method is add_years) | |
| max_applications | No | How many times the event may fire over an asset's life (default 1) | |
| min_years_between | No | Minimum years between firings of a recurring event (default 1) | |
| asset_type_group_id | No | Asset type group the scope applies to (exactly one of the two scope ids) | |
| trigger_condition_max | Yes | Upper bound of the trigger window - the event fires when projected condition falls to this | |
| trigger_condition_min | No | Lower bound of the trigger window (default 0); an asset already below it has missed the event | |
| work_generation_priority | No | Priority for generated work orders. Ignored unless work_generation is work_order. | |
| work_generation_category_id | No | Work category for generated work orders - resolve with list_work_categories. Ignored unless work_generation is work_order. |