eco_create
Create an engineering change order record that captures changes as a diffable ECO, optionally computing lockfile where-used impact in the same call.
Instructions
Build an ECO change-order record (issue #142, C3) — turn a change into a record, not a silent mutation (the diff IS the change order, mapping onto a git commit/PR). Optionally compute its where-used impact over a lockfile in the same call, so the blast radius travels with the record.
id: the ECO id (e.g. "ECO-0001").
affected: the list of changed item / component ids.
disposition: the change disposition (use_as_is | rework | scrap | revise | ...).
effectivity: a dict with exactly one of date|serial|revision (when it takes
effect).
title / note: optional human description recorded on the record.
interface_change: true if a published interface moved (the §9 stale trigger).
lockfile: optional path — when given, the result embeds an impact report.
out: optional path — write the git-diffable ECO sidecar there.
Returns the ECO object (with impact when a lockfile is supplied); a malformed
ECO fails loudly.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | ||
| out | No | ||
| note | No | ||
| title | No | ||
| affected | Yes | ||
| lockfile | No | ||
| disposition | Yes | ||
| effectivity | Yes | ||
| interface_change | No |