The Employment tab of a staff person's profile — a timeline of employment
spans with add / edit / end / remove, persisted immediately via
PhoenixKitStaff.Employments.
The context denormalizes the current (open) span onto Person and broadcasts
:person_employment_changed; the host PersonShowLive (subscribed to the
person topic) reloads and re-renders this component, so the Overview header
stays in sync. Activity is logged at this layer (actor from the passed-in
phoenix_kit_current_user).
v1 edits job_title in the primary language only; the span's translations
column is preserved for a later per-language pass. The per-span team is a
history snapshot (it does not change the person's TeamMembership).