Commit graph

345 commits

Author SHA1 Message Date
Andrey Avtomonov
e501d1d81c Merge origin/main into merge-scan-into-ingest-v1 2026-05-14 01:40:11 +02:00
Andrey Avtomonov
3ee48e0752 Fix CI smoke checks 2026-05-14 01:33:09 +02:00
Andrey Avtomonov
1a472cf3ed
fix: clean up ktx yaml config parameters (#75)
* fix: clean up ktx yaml config parameters

* fix: align ci smoke checks with status output

* test: update artifact smoke status assertion
2026-05-14 01:27:31 +02:00
Andrey Avtomonov
2fd2bfde98
Merge branch 'main' into merge-scan-into-ingest-v1 2026-05-14 01:24:27 +02:00
Andrey Avtomonov
339bc39de8
docs: add Codecov badge (#85) 2026-05-14 01:21:01 +02:00
Andrey Avtomonov
9b40ad43ca Fix test harness failures 2026-05-14 01:14:19 +02:00
Andrey Avtomonov
0a261fe8a4
ci: add codecov coverage reporting (#82)
* ci: add codecov coverage reporting

* ci: fix codecov and secret scan checks

* ci: fix smoke and artifact checks
2026-05-14 01:13:31 +02:00
Andrey Avtomonov
64437d0764 Merge origin/main into merge-scan-into-ingest-v1 2026-05-14 01:00:58 +02:00
Andrey Avtomonov
28b5e2a83e
fix: align KTX agent tools and repair handling (#73) 2026-05-14 00:57:51 +02:00
Andrey Avtomonov
857aaeeba0 Merge origin/main into merge-scan-into-ingest-v1 2026-05-14 00:55:57 +02:00
Andrey Avtomonov
518d53ea65 Merge origin/main into merge-scan-into-ingest-v1 2026-05-14 00:50:26 +02:00
Luca Martial
ed690ef60c
feat(cli): redesign ktx status output UX (#80)
* feat(cli): redesign ktx status output with grouped checks and color

Replace flat PASS/FAIL/WARN text output with a grouped, symbol-based
layout (Environment, Project, Semantic search, Query history). Passing
groups collapse to a single summary line; failing groups expand to show
individual checks with fix hints. Adds --verbose flag to show all checks
including passing ones, color support for TTY terminals, a dedicated
setup-mode report that guides users toward `ktx setup`, and timing info.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* refactor(cli): extract project checks and historic SQL doctor into status-project

Move project-level doctor checks, semantic search embedding checks, and
historic SQL doctor logic from doctor.ts into a dedicated status-project.ts
module. Removes historic-sql-doctor.ts and its test file, consolidating
everything into the new module with its own tests.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-05-13 18:47:58 -04:00
Andrey Avtomonov
9131c82724 Merge origin/main into merge-scan-into-ingest-v1 2026-05-14 00:47:03 +02:00
Luca Martial
dabd640cad
feat(cli): tree-picker UI for database scope selection (#81)
* refactor(cli): extract generic tree picker from Notion-specific modules

Rename notion-page-picker-tree → tree-picker-state and
notion-page-picker-tui → tree-picker-tui, removing Notion-specific
naming so the tree picker can be reused for database scope selection.
Update notion-page-picker to consume the new generic interfaces.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* feat(cli): add database tree picker for schema and table scope selection

Replace inline multiselect prompts in setup-databases with a new
database-tree-picker that uses the generic tree picker TUI. This gives
database scope selection the same grouped tree UI as the Notion page
picker, combining schema and table selection into a single step.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-05-13 18:41:44 -04:00
Andrey Avtomonov
3b98faaf83 feat(cli): split ingest progress into per-phase rows, rename work units to tasks
Each database target in the unified ingest dashboard now renders one row per
real subprocess (Schema, then Query history when enabled) instead of a single
combined bar. Each phase has its own monotonic 0-100% bar so the progress
never snaps back to zero when historic-sql starts after scan completes.
Completed phases keep their final bar, summary, and elapsed time visible as
an inline audit trail; queued and skipped phases are shown explicitly.

Also rename user-facing "work units" / "Failed work units" to "tasks" /
"Failed tasks" in ingest output and parseIngestSummary. The parser still
accepts the legacy "Work units:" wording in captured output for backward
compat. Internal memory-flow event names and type fields are left alone.
2026-05-14 00:32:18 +02:00
Luca Martial
c2750dd797
refactor(cli): hide internal setup options and remove dead flags (#79)
Hide advanced/internal `ktx setup` options from --help output using
.hideHelp() so the command surface is approachable for new users. Remove
the --project, --agent-scope, and --skip-initial-source-ingest flags
that are no longer needed. Update docs and tests to match.

Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-05-13 17:55:25 -04:00
Andrey Avtomonov
ecebc018b9 Merge scan into ingest flow 2026-05-13 23:53:45 +02:00
Luca Martial
f219ba22a6
feat(cli): redesign Notion page picker UI and add skip-empty flow (#78)
Rework the inline picker to use a cleaner visual style (filled/empty
square glyphs, bordered layout, clack-style header) and streamlined
keybindings (Enter to confirm, Escape to quit, Right Arrow to expand).
Replace the transient "select at least one" hint with a skip-empty
confirmation prompt that exits cleanly via quit-without-save.

Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-05-13 17:28:48 -04:00
Luca Martial
9ecb8cb119
feat(cli): add edit flow for setup connections (#77)
* feat(cli): add edit flow for primary database connections in setup

Allow users to edit existing primary database connections during setup
instead of only adding new ones. Preselects existing values (URL, schemas,
tables) so users can adjust without re-entering everything.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* feat(cli): add edit flow for context source connections in setup

Allow users to edit existing context source connections during setup.
Preselects existing values (URLs, credentials, repo details) and offers
a "Keep existing credential" option for sensitive fields.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* fix(cli): rename "Add more" to "Add additional" in primary sources menu

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-05-13 17:22:59 -04:00
Andrey Avtomonov
75e04cfa56 fix(cli): remove legacy ingest and wiki commands 2026-05-13 22:42:07 +02:00
Luca Martial
c31281c643
Merge pull request #76 from Kaelio/remove-vertex-gcloud-auth
refactor(cli): remove interactive gcloud auth from Vertex AI setup
2026-05-13 16:30:28 -04:00
Luca Martial
ea33e51e8f refactor(cli): remove interactive gcloud auth from Vertex AI setup
Instead of spawning an interactive gcloud login flow, tell users to run
gcloud auth application-default login themselves before continuing. Also
adds a Vertex-specific model list and spinner progress for LLM health
checks.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-05-13 13:29:50 -07:00
Andrey Avtomonov
011d694ed3 fix(cli): remove top-level scan command 2026-05-13 22:16:17 +02:00
Andrey Avtomonov
601591bfbf docs(plan): add unified ingest v1 verification copy closure plan 2026-05-13 21:22:44 +02:00
Andrey Avtomonov
767c33de18 test(cli): verify unified ingest setup closure 2026-05-13 21:21:37 +02:00
Andrey Avtomonov
bf581b9225 fix(cli): remove primary-source wording from setup output 2026-05-13 21:18:18 +02:00
Andrey Avtomonov
efef54a52d test(cli): fix setup database test type-check 2026-05-13 21:17:11 +02:00
Andrey Avtomonov
38e921d3e2 fix(cli): align setup database labels 2026-05-13 21:07:32 +02:00
Andrey Avtomonov
869669e87f fix(cli): aggregate unsupported query-history warnings 2026-05-13 20:53:10 +02:00
Andrey Avtomonov
657f166cf0 docs(plan): add final ux labels plan with narrowed label scans 2026-05-13 20:50:57 +02:00
Andrey Avtomonov
fae083700a docs(plan): add progress copy closure; test: align setup back-nav fixture
Adds the iter9 plan and updates the setup back-navigation test fixture
to pass disableQueryHistory plus listSchemas/listTables stubs that the
unified ingest setup step now requires.
2026-05-13 20:32:49 +02:00
Andrey Avtomonov
61f0881cee fix(cli): rename setup schema scope prompt 2026-05-13 20:16:34 +02:00
Andrey Avtomonov
2266f91e05 fix(cli): sanitize public ingest progress copy 2026-05-13 20:16:08 +02:00
Andrey Avtomonov
38ba88176c fix(cli): add public ingest copy sanitizers 2026-05-13 20:15:18 +02:00
Andrey Avtomonov
98371def48 docs: add unified ingest v1 public plain output closure plan 2026-05-13 20:09:50 +02:00
Andrey Avtomonov
b7e8abe735 test(cli): verify unified ingest public plain output 2026-05-13 20:08:32 +02:00
Andrey Avtomonov
6fcf45543e fix(cli): suppress low-level public ingest output 2026-05-13 20:06:29 +02:00
Andrey Avtomonov
db102b9bfe fix(cli): use public source labels in ingest reports 2026-05-13 20:05:46 +02:00
Andrey Avtomonov
994d84e7ab docs: add unified ingest v1 final public surface closure plan 2026-05-13 19:59:33 +02:00
Andrey Avtomonov
b697c91828 test(cli): close unified ingest final public surface checks 2026-05-13 19:58:43 +02:00
Andrey Avtomonov
96e3c875fc fix(cli): omit hidden commands from docs command tree 2026-05-13 19:57:39 +02:00
Andrey Avtomonov
41c5ecdcfb fix(cli): preserve query-history pull config in public ingest 2026-05-13 19:57:14 +02:00
Andrey Avtomonov
27e7f214f6 docs: add unified ingest v1 foreground and retry closure plan 2026-05-13 19:49:55 +02:00
Andrey Avtomonov
fa9237956e
ci: run pre-commit checks in CI (#74)
* ci: run pre-commit in CI

* test: update CI workflow guardrail
2026-05-13 19:49:25 +02:00
Andrey Avtomonov
a04f964ae1 test: verify unified ingest ux closure 2026-05-13 19:49:16 +02:00
Andrey Avtomonov
4f866f14ea fix: remove scan wording from demo progress 2026-05-13 19:47:38 +02:00
Andrey Avtomonov
d01fa64838 fix: align setup next steps with unified ingest 2026-05-13 19:47:16 +02:00
Andrey Avtomonov
b175d1ac73 fix: add public ingest retry guidance 2026-05-13 19:46:55 +02:00
Andrey Avtomonov
f2776813c9 fix: explain query history schema order 2026-05-13 19:46:18 +02:00
Andrey Avtomonov
843b694589 fix: render unified ingest foreground warnings 2026-05-13 19:45:32 +02:00