Skip to content

fix: mart_name, pulizia mart orfani e codelists da support id (#425, #426, #471) - #515

Open
Andreacnt wants to merge 1 commit into
mainfrom
fix/mart-name-stale-codelists
Open

Andreacnt wants to merge 1 commit into
mainfrom
fix/mart-name-stale-codelists

Conversation

@Andreacnt

Copy link
Copy Markdown

Cosa cambia

Tre fix di debito/contratto, ognuno con test.

#425 — mart_name al posto di mart_index

  • toolkit_layer/toolkit_query (pipeline mode), CLI toolkit inspect config --mart-name e MCP accettano il nome della tabella ("mart_comuni").
  • mart_index resta per backward compat ma e' deprecato; se passi un nome non dichiarato ottieni un errore con l'elenco delle tabelle disponibili.
  • La risoluzione usa gli output dichiarati in dataset.yml (per-anno e multi-year).

#426 — pulizia dei parquet mart non dichiarati

  • run_mart (per-anno) e run_mart_multi_year rimuovono i .parquet non piu' dichiarati dopo aver scritto i nuovi output (un run fallito non cancella nulla).
  • Evita il bug silenzioso: tabella rinominata → vecchio parquet letto dal layer tool per ordine alfabetico.

#471 — codelists dai support: id

  • build_codelists deriva i nomi dalle entry support: con type: codelist e id (fonte canonica SDMX), normalizzati lowercase e deduplicati.
  • Fallback invariato ai codelists/*.csv per i repo legacy: geo.csv resta nell'elenco.
  • Sblocca la rimozione dei CSV non-geo nel repo eurostat (Fase 2, fuori scope).

Cambio contratto

  • mart_name e' il nuovo modo di selezionare una tabella mart; mart_index deprecato (nessuna rimozione).
  • toolkit_registry_show(repo, artifact="codelists") puo' includere id SDMX (obs_flag, unit) accanto ai nomi file legacy finche' i CSV restano nel repo.

Verifica

  • pytest: 71 passed (registry/cli/query) + 42 passed (pipeline/mcp) + 59 passed (run/validation) — 2 fallimenti preesistenti su Windows verificati anche su main pulito (test_safe_path_directory_without_dataset_yml, test_cli_resume_non_portable_record_warns_and_proceeds).
  • ruff check e ruff format --check puliti sui file toccati.

Closes #425, closes #426, closes #471.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

1 participant