fix: address 3 quality review findings — tracker_ok gate, LIMIT=0 warning, cache write log level

This commit is contained in:
2026-06-16 16:41:32 +00:00
parent 8846a4f1df
commit 817fa17e41
3 changed files with 9 additions and 4 deletions
+1 -1
View File
@@ -90,7 +90,7 @@ class EmbeddingCache:
np.save(tmp, embedding) np.save(tmp, embedding)
os.replace(tmp, final) os.replace(tmp, final)
except Exception as e: except Exception as e:
logger.debug("Cache write failed for %s: %s", asset_id, e) logger.warning("Cache write failed for %s: %s", asset_id, e)
try: try:
os.remove(tmp) os.remove(tmp)
except OSError: except OSError:
+3
View File
@@ -507,6 +507,7 @@ def upload_to_frigate(jobs: list[dict]) -> None:
asset_id = asset_map.get(fname) asset_id = asset_map.get(fname)
if asset_id: if asset_id:
tracker_ok = True
try: try:
mark_uploaded( mark_uploaded(
asset_id, asset_id,
@@ -516,6 +517,7 @@ def upload_to_frigate(jobs: list[dict]) -> None:
frigate_score=pre_fscore, frigate_score=pre_fscore,
) )
except Exception as tracker_exc: except Exception as tracker_exc:
tracker_ok = False
# Upload to Frigate succeeded — don't retry on tracker # Upload to Frigate succeeded — don't retry on tracker
# failure or we'd upload a duplicate to Frigate. # failure or we'd upload a duplicate to Frigate.
logger.error( logger.error(
@@ -523,6 +525,7 @@ def upload_to_frigate(jobs: list[dict]) -> None:
" but asset may be re-selected next run: %s", " but asset may be re-selected next run: %s",
fname, tracker_exc, fname, tracker_exc,
) )
if tracker_ok:
if pre_fscore is not None: if pre_fscore is not None:
person_has_fscores = True person_has_fscores = True
actually_uploaded.append((fname, asset_id)) actually_uploaded.append((fname, asset_id))
+2
View File
@@ -70,6 +70,8 @@ def _resolve_strategy(strategy: str, has_embedding: bool) -> tuple[int | str, st
custom_limit = _getenv_optional_int("LIMIT") custom_limit = _getenv_optional_int("LIMIT")
if custom_limit is not None: if custom_limit is not None:
if custom_limit == 0:
logger.warning("LIMIT=0 selects zero images — set LIMIT to a positive integer or leave unset for auto")
return custom_limit, "smart" return custom_limit, "smart"
strategy_map = { strategy_map = {