ktx/packages/cli/test/context
Andrey Avtomonov f5dea9a089
fix(ingest): recover textual-conflict gate failures; fix query-history adapter (#255)
* fix(ingest): recover textual-conflict gate failures; fix query-history adapter

Two latent gaps in the isolated-diff local-ingest pipeline that can abort an
otherwise-successful ingest:

- Metabase: when a work-unit patch hit both a textual conflict and a post-merge
  dangling sl_ref, the after-textual-resolution branch returned a hard
  semantic_conflict and rolled back the whole job. It now runs the same
  repairGateFailure recovery the clean-apply branch already uses (re-validate,
  then commit the union of resolved + repaired paths), reaching parity.

- Query history: the historic-sql adapter was registered only when ktx.yaml had
  context.queryHistory.enabled=true, so `--query-history` threw "Adapter not
  available for local ingest". Registration now resolves the dialect from driver
  capability, since the explicit --query-history request is itself the opt-in;
  the config-gated helper is unchanged for status/setup/probes.

Adds the previously-missing tests for both paths.

* chore: sync uv.lock to 0.8.0 (regenerated with pinned uv 0.11.11)

* fix(ingest): drop ktx's own scan probes and dedup tables in query history

Query history (historic-sql) mined two kinds of noise back into context:

- ktx's own warehouse scan emits relationship- and column-profiling probes
  (the relationship_profile_values aggregation and the child_values/parent_values
  FK-overlap CTEs) into pg_stat_statements. shouldDropBySql now filters these
  ktx-owned, dialect-stable signatures so ktx introspection is not ingested as
  usage history.

- The same physical table appears both bare (accounts, via search_path) and
  schema-qualified (orbit_raw.accounts), producing duplicate per-table work
  units. canonicalizeTableIdentifiers collapses a bare name into its unique
  qualified form before work-unit keying; ambiguous names are left untouched.

On the orbit demo this removes ~35% of sampled query templates (ktx self-probes)
and ~45 duplicate per-table work units.

* docs(agents): add Design Reasoning Defaults section
2026-06-03 13:05:59 +02:00
..
connections test: split cli tests from source tree (#216) 2026-05-26 08:49:05 +02:00
core test: split cli tests from source tree (#216) 2026-05-26 08:49:05 +02:00
daemon test: split cli tests from source tree (#216) 2026-05-26 08:49:05 +02:00
index-sync test: split cli tests from source tree (#216) 2026-05-26 08:49:05 +02:00
ingest fix(ingest): recover textual-conflict gate failures; fix query-history adapter (#255) 2026-06-03 13:05:59 +02:00
llm feat: add codex llm backend for ktx runtime work (#253) 2026-06-02 13:57:11 +02:00
mcp feat: report MCP client telemetry (#242) 2026-05-30 18:00:25 +02:00
memory test: split cli tests from source tree (#216) 2026-05-26 08:49:05 +02:00
project feat: add codex llm backend for ktx runtime work (#253) 2026-06-02 13:57:11 +02:00
prompts test: split cli tests from source tree (#216) 2026-05-26 08:49:05 +02:00
scan test: split cli tests from source tree (#216) 2026-05-26 08:49:05 +02:00
search test: split cli tests from source tree (#216) 2026-05-26 08:49:05 +02:00
skills test: split cli tests from source tree (#216) 2026-05-26 08:49:05 +02:00
sl feat(cli): shell completion for commands, flags, and entity names (#244) 2026-05-31 23:44:33 +02:00
sql-analysis test: split cli tests from source tree (#216) 2026-05-26 08:49:05 +02:00
test test: split cli tests from source tree (#216) 2026-05-26 08:49:05 +02:00
tools test: split cli tests from source tree (#216) 2026-05-26 08:49:05 +02:00
wiki feat(cli): shell completion for commands, flags, and entity names (#244) 2026-05-31 23:44:33 +02:00