Files
ThothII/harness/tht/vendor/VENDORED.md

1.8 KiB

Codice vendorizzato

thoth_lsh.py

  • Origine: thoth_sqldb2 (pacchetto PyPI thoth-dbmanager 0.7.4), file thoth_dbmanager/lsh/core.py
  • Copyright 2025 Marco Pancotti — Apache License 2.0
  • Modifiche locali:
    1. rimosso blocco di debug su colonna "doctype" in create_lsh_index;
    2. skip_column: soglie parametrizzate (max_total_chars, max_avg_length) con default identici agli originali (50000 / 20);
    3. rimossa query_lsh_index (sostituita da tht.lshindex.query_index, che restituisce anche gli score per il ranking spiegabile);
    4. try/except generico rimosso da create_lsh_index: gli errori devono emergere.
    5. skip_column: la guardia "name-like" (originariamente solo "name") è stata estesa a token bilingui EN/IT tramite la costante NAME_LIKE_TOKENS (name, nome, nominativ, denominazion, ragione_sociale), sovrascrivibile col parametro name_tokens. Necessario perché il datawarehouse è in italiano e le colonne nome/cognome/denominazione/ragione_sociale non venivano riconosciute dalla sola parola inglese name.

Nota: skip_column e NAME_LIKE_TOKENS non sono più usati dal flusso Thoth. La selezione delle colonne da indicizzare è ora governata dal principio di eleggibilità implementato in tht/mschema/eligibility.py. L'esclusione dei testi larghi avviene a monte tramite il flag eligible persistito in physical.yaml (impostato da tht schema introspect), non tramite l'euristica sulla lunghezza del vendorizzato. Le funzioni restano nel file per fedeltà alla sorgente upstream; Thoth ha semplicemente smesso di importarle (vedi tht/db/sampling.py).

Le query di introspezione in tht/db/introspect.py sono ADATTATE (non copiate verbatim) da thoth_dbmanager/adapters/postgresql.py della stessa versione.