A named person owns fulfillment of the kit - today that is Paul Coonrod,
informally, and everything bottlenecks through him. The package now records
it explicitly:
- The Warehouse owner control is a dropdown of project members (the same
roster the Owner picker reads). Picking someone stores BOTH the display
name (kitOwner - exports and old renderers keep working) and the account id
(kitOwnerId - the routing CR-011's notifications will read at T8.3).
- Confirmed Aug 18: the field lives ON the work package, not the project - a
package retargeted to a different warehouse notifies the right person
without touching the project. The wizard gets no field.
- A stored name with no matching account - typed before the field was
account-backed, or someone since removed from the project - is KEPT as a
selected "(no account)" option and round-trips unchanged. Removing someone
from the project breaks nothing.
- The dashboard filters by warehouse owner, options drawn from the owners
actually present in the data - a filter offering people with nothing to
fulfill is noise.
Verification (each probe run alone): kitting_check.py extended to 21/21
(T8.2 section: picker, id+name persistence, orphan survival, board filter).
Regression: generalinfo_check 49/49.
Items: CR-010
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>