fix: lexicon validation no-op in Docker — lexicons dir missing from image (#1074)
the `lexicons/` directory was not copied into the Docker image, so
`_load_lexicon` returned None for every lexicon ID and `validate_record`
silently passed all records. this allowed a record with only `title` and
`description` (no audio reference) to be ingested as a valid track.
found during Jetstream smoketest: `pdsx create fm.plyr.stg.track
title="..." description="..."` was accepted and indexed as a track.
fixes:
- copy `lexicons/` into the Docker image
- replace fragile `parents[4]` path with upward search that works in
both the repo checkout and the container layout
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
authored by