Le 3 radici intra-CLI, portate con rename psdwp3->tht + fix path import (session.phase -> phase). Espongono gli helper condivisi: CONFIG_OPT (config_cmd), _load_config_or_exit/ physical_path/annotations_path (schema_cmd), session_dir/load_session_or_exit (session_cmd). Drift phase fix in session_cmd (7 siti): MAX_PHASE -> wf.max_phase, PHASE_NAMES -> wf.phase_name(), SCHEMA_LINKING_PHASE -> wf.schema_linking_phase(). Le vecchie costanti non esistono piu' in tht.phase (sono metodi su Workflow dalla Onda -1/F2). Check grep-per-file applicato: trovati e fixati 4 residui (config/nsp.yaml, 2x 'nsp schema introspect', 'Sessioni PsdWp3') che il sed psdwp3->tht non tocca. Lesson del fix precedente applicata. session_cmd importa sql_cmd lazy (dentro finalize_cmd) -> non si rompe finche' sql_cmd (Onda 4) non sara' portato. Suite: 161 passed. tht --help ora mostra phase, config, schema, session.
48 lines
1.3 KiB
Python
48 lines
1.3 KiB
Python
"""tht CLI -- Typer app `tht`.
|
|
|
|
Minimal skeleton for now: registers `phase_app` (the gate needs `tht phase meta --json`).
|
|
Other command groups (db, schema, lsh, vector, memory, session, decision, sql, cte,
|
|
evidence, search) are wired in their porting tasks, once their backend deps land
|
|
(A9 ports db/mschema/_guards; B1 ports vectorstore; B3 ports search/lshindex/sampling).
|
|
"""
|
|
from __future__ import annotations
|
|
|
|
import typer
|
|
|
|
from tht import __version__
|
|
|
|
app = typer.Typer(
|
|
help="tht (Thoth) -- kit operativo per generazione SQL assistito da Pi",
|
|
no_args_is_help=True,
|
|
)
|
|
|
|
|
|
def _version_callback(value: bool) -> None:
|
|
if value:
|
|
typer.echo(__version__)
|
|
raise typer.Exit()
|
|
|
|
|
|
@app.callback()
|
|
def main(
|
|
version: bool = typer.Option(
|
|
False,
|
|
"--version",
|
|
callback=_version_callback,
|
|
is_eager=True,
|
|
help="Mostra la versione ed esce.",
|
|
),
|
|
) -> None:
|
|
pass
|
|
|
|
|
|
from tht.cli.config_cmd import config_app # noqa: E402
|
|
from tht.cli.phase_cmd import phase_app # noqa: E402
|
|
from tht.cli.schema_cmd import schema_app # noqa: E402
|
|
from tht.cli.session_cmd import session_app # noqa: E402
|
|
|
|
app.add_typer(phase_app, name="phase")
|
|
app.add_typer(config_app, name="config")
|
|
app.add_typer(schema_app, name="schema")
|
|
app.add_typer(session_app, name="session")
|