Summary
mock_esp32.py exists in two places with divergent content:
mock_esp32.py (repo root, ~443 lines)docker/mock_esp32.py (~401 lines)
They are different files (different hashes/line counts). Only the docker/ copy is actually used — docker/Dockerfile.mock_esp32 does COPY mock_esp32.py . with build context docker/ (see docker/docker-compose.test.yml). The root copy is an orphan.
Impact
Two copies can silently drift; someone editing the "wrong" one will think they changed the mock device. Root copy is dead weight.
Suggested fix
Pick one location and remove the other:
- Recommended: keep
docker/mock_esp32.py (it's the built artifact), delete root mock_esp32.py. - If the root file is used by any tooling outside the compose files, check first (
rg -l mock_esp32 across the repo) and reconcile the two versions before deleting.
Verification
docker compose -f docker/docker-compose.test.yml up --build mock_esp32 still works after the move.
Summary
mock_esp32.pyexists in two places with divergent content:mock_esp32.py(repo root, ~443 lines)docker/mock_esp32.py(~401 lines)They are different files (different hashes/line counts). Only the
docker/copy is actually used —docker/Dockerfile.mock_esp32doesCOPY mock_esp32.py .with build contextdocker/(seedocker/docker-compose.test.yml). The root copy is an orphan.Impact
Two copies can silently drift; someone editing the "wrong" one will think they changed the mock device. Root copy is dead weight.
Suggested fix
Pick one location and remove the other:
docker/mock_esp32.py(it's the built artifact), delete rootmock_esp32.py.rg -l mock_esp32across the repo) and reconcile the two versions before deleting.Verification
docker compose -f docker/docker-compose.test.yml up --build mock_esp32still works after the move.