Andrey Avtomonov
|
adb5c4488e
|
feat(ingest): promote isolated diff to default runner path
|
2026-05-18 02:48:37 +02:00 |
|
Andrey Avtomonov
|
8cf63b2248
|
feat(ingest): make isolated diff routing the private default
|
2026-05-18 02:47:49 +02:00 |
|
Andrey Avtomonov
|
8096028219
|
chore(ingest): verify isolated diff connector migration
|
2026-05-18 02:42:29 +02:00 |
|
Andrey Avtomonov
|
2348a737c7
|
test(ingest): verify metricflow isolated projection path
|
2026-05-18 02:40:55 +02:00 |
|
Andrey Avtomonov
|
b6b63123f8
|
feat(ingest): project metricflow semantic models before work units
|
2026-05-18 02:39:01 +02:00 |
|
Andrey Avtomonov
|
0137de05a2
|
test(ingest): cover non-metabase isolated diff routing
|
2026-05-18 02:38:10 +02:00 |
|
Andrey Avtomonov
|
449db1d42a
|
feat(ingest): route direct-write connectors through isolated diffs
|
2026-05-18 02:37:26 +02:00 |
|
Andrey Avtomonov
|
a00285fd42
|
Improve ingest progress updates
|
2026-05-18 02:21:59 +02:00 |
|
Andrey Avtomonov
|
90a0d7ff3b
|
chore(ingest): verify isolated diff gate repair
|
2026-05-18 00:42:16 +02:00 |
|
Andrey Avtomonov
|
eb0d07f2a1
|
test(ingest): verify isolated diff final gate repair
|
2026-05-18 00:40:21 +02:00 |
|
Andrey Avtomonov
|
10641ac411
|
feat(ingest): wire isolated diff gate repair
|
2026-05-18 00:38:07 +02:00 |
|
Andrey Avtomonov
|
51a5530995
|
feat(ingest): repair isolated diff semantic gate failures
|
2026-05-18 00:37:09 +02:00 |
|
Andrey Avtomonov
|
b05c9a4f0d
|
feat(ingest): add isolated diff gate repair agent
|
2026-05-18 00:36:13 +02:00 |
|
Andrey Avtomonov
|
5cc2c98c5e
|
test(ingest): cover isolated diff gate repair
|
2026-05-18 00:35:42 +02:00 |
|
Andrey Avtomonov
|
a630174341
|
test(ingest): align textual conflict failure coverage
|
2026-05-18 00:27:19 +02:00 |
|
Andrey Avtomonov
|
32288434ea
|
test(ingest): verify isolated diff textual conflict repair
|
2026-05-18 00:24:56 +02:00 |
|
Andrey Avtomonov
|
aa8d59c14a
|
feat(ingest): report isolated diff resolver outcomes
|
2026-05-18 00:24:12 +02:00 |
|
Andrey Avtomonov
|
8784a47f84
|
feat(ingest): repair isolated diff textual conflicts
|
2026-05-18 00:23:45 +02:00 |
|
Andrey Avtomonov
|
529c6daa68
|
test(ingest): cover isolated diff resolver integration
|
2026-05-18 00:23:04 +02:00 |
|
Andrey Avtomonov
|
9f0abe5d65
|
test(ingest): cover isolated diff textual conflict resolver
|
2026-05-18 00:22:45 +02:00 |
|
Andrey Avtomonov
|
7cc9f0e70a
|
fix(ingest): validate scan sources and wiki refs
|
2026-05-18 00:11:11 +02:00 |
|
Andrey Avtomonov
|
ba534fb8ca
|
fix(ingest): gate global wiki references
|
2026-05-17 22:25:46 +02:00 |
|
Andrey Avtomonov
|
87f1193ed1
|
chore(ingest): verify isolated diff gate closure
|
2026-05-17 22:15:38 +02:00 |
|
Andrey Avtomonov
|
c61c50be11
|
test(ingest): cover isolated diff reference and target gates
|
2026-05-17 22:13:54 +02:00 |
|
Andrey Avtomonov
|
3613fb3686
|
fix(ingest): trace isolated SL target policy gates
|
2026-05-17 22:12:53 +02:00 |
|
Andrey Avtomonov
|
9d756b2c6c
|
fix(ingest): enforce SL target connection scope
|
2026-05-17 22:11:44 +02:00 |
|
Andrey Avtomonov
|
5ec639602b
|
fix(ingest): gate final wiki references
|
2026-05-17 22:10:58 +02:00 |
|
Andrey Avtomonov
|
977a610ea9
|
fix(ingest): gate provenance before isolated diff squash
|
2026-05-17 22:03:20 +02:00 |
|
Andrey Avtomonov
|
656e5846aa
|
test(ingest): verify isolated diff postmortem coverage
|
2026-05-17 21:53:18 +02:00 |
|
Andrey Avtomonov
|
46455e74d1
|
fix(ingest): trace policy conflicts and cleanup child worktrees
|
2026-05-17 21:48:47 +02:00 |
|
Andrey Avtomonov
|
86837dd3ed
|
fix(ingest): persist postmortem failure traces
|
2026-05-17 21:47:43 +02:00 |
|
Andrey Avtomonov
|
51fe8306c3
|
fix(ingest): gate isolated final integration tree
|
2026-05-17 21:42:45 +02:00 |
|
Andrey Avtomonov
|
cc1eb7c51b
|
fix(ingest): tighten final artifact gates
|
2026-05-17 21:41:01 +02:00 |
|
Andrey Avtomonov
|
8d78f872af
|
docs: document ingest trace inspection
|
2026-05-17 21:32:03 +02:00 |
|
Andrey Avtomonov
|
cae5c4b948
|
feat: add isolated diff ingestion v1 core
|
2026-05-17 21:30:30 +02:00 |
|
Andrey Avtomonov
|
1013bb65df
|
test: cover isolated diff ingestion regressions
|
2026-05-17 21:29:08 +02:00 |
|
Andrey Avtomonov
|
c481f1cce9
|
feat: route selected ingest sources through isolated diffs
|
2026-05-17 21:27:41 +02:00 |
|
Andrey Avtomonov
|
0be264dde0
|
feat: integrate isolated work unit patches
|
2026-05-17 21:24:21 +02:00 |
|
Andrey Avtomonov
|
c2edec84c2
|
feat: execute ingest work units in child worktrees
|
2026-05-17 21:23:54 +02:00 |
|
Andrey Avtomonov
|
43e6d4542d
|
feat: add final ingest artifact gates
|
2026-05-17 21:23:13 +02:00 |
|
Andrey Avtomonov
|
ba76f2e5f0
|
feat: validate wiki body semantic references
|
2026-05-17 21:22:43 +02:00 |
|
Andrey Avtomonov
|
739d88420e
|
feat: add isolated ingest patch helpers
|
2026-05-17 21:22:15 +02:00 |
|
Andrey Avtomonov
|
01b7f54253
|
feat: persist ingest trace events
|
2026-05-17 21:21:23 +02:00 |
|
Andrey Avtomonov
|
c89af7733a
|
fix: improve ingest runtime readiness (#124)
* fix: improve ingest runtime readiness
* fix(cli): mock runtime in slow setup tests
* test(cli): isolate setup runtime status
|
2026-05-17 10:27:29 +02:00 |
|
Andrey Avtomonov
|
f49672ba5b
|
fix: accept ingest wiki forward refs (#125)
|
2026-05-17 10:10:14 +02:00 |
|
Andrey Avtomonov
|
74be832aea
|
feat(cli): improve search ranking output (#123)
|
2026-05-17 02:32:41 +02:00 |
|
Andrey Avtomonov
|
d3d58a279b
|
fix(release): repair next npm release workflow (#122)
* fix(ci): run rc releases from next branch
* fix(context): allow release git askpass env
* fix(release): make npm publish noninteractive
* fix(release): use npm trusted publishing
* fix(release): tolerate npm propagation in smoke
* docs(release): document trusted publishing auth
|
2026-05-17 01:41:07 +02:00 |
|
Andrey Avtomonov
|
b565e44a22
|
feat: add claude-code llm backend with runtime port (#115)
* docs: revise claude-code ingest backend spec
* docs: keep claude-code spec focused on ingest
* docs: expand claude-code spec to full llm parity
* Refine claude-code backend spec after adversarial review iteration 1
* Refine claude-code backend spec after adversarial review iteration 2
* Refine claude-code backend spec after adversarial review iteration 3
* feat: recognize claude-code llm backend
* feat: add ktx llm runtime port
* feat: add claude-code llm runtime
* feat: route non-agent llm calls through runtime
* feat: run ingest agents through llm runtime
* feat: support claude-code setup and status
* test: verify claude-code backend runtime
* docs: add claude-code backend v1 runtime plan
* fix: close claude-code runtime isolation checks
* fix: warn on claude-code prompt caching during setup
* chore: verify claude-code v1 closure
* docs: add claude-code backend v1 isolation closure plan
* fix: update claude-code ingest setup guidance
* docs: add claude-code backend v1 ingest guidance closure plan
* docs: align claude-code isolation spec with sdk metadata
* test: cover claude-code host discovery metadata
* fix: tolerate claude-code host discovery metadata
* docs: clarify claude-code host discovery metadata
* docs: add claude-code auth-probe isolation fix plan
* chore: prepare kaelio ktx rc1 release
* chore: add semantic release workflow
* fix: unblock ci checks
* chore(release): 0.1.0-rc.1
* feat: add Claude Code model selection to setup
* fix: keep git maintenance attached in local repos
|
2026-05-16 12:06:34 +02:00 |
|
Andrey Avtomonov
|
e6d578c03f
|
feat(setup): add Claude Desktop target and MCP-first agent setup (#114)
* feat(setup): add Claude Desktop target and MCP-first agent setup
Adds `ktx mcp stdio` and a `claude-desktop` setup target that generates a
local plugin ZIP wiring the analytics skill and a stdio MCP config. Replaces
the CLI-only agent install mode with MCP+analytics (default) and an optional
admin CLI skill, renames the research skill to analytics, and lets interactive
setup pick project vs global scope when every target supports it. Extracts a
shared MCP server factory used by both HTTP and stdio entrypoints.
* Add MCP agent client setup support
* Polish setup output formatting
* Add MCP tool polish design spec
Design for slimming the MCP-registered surface from 25 to 11 tools,
introducing memory_ingest, applying the per-tool polish kit (annotations,
outputSchema, .describe(), in-band error wrapping, union-drift fixes,
type-narrowed jsonToolResult), emitting progress notifications on
sql_execution + sl_query, and refining the ktx-analytics SKILL.md to
match.
* Refine MCP tool polish design spec after adversarial review iteration 1
* Refine MCP tool polish design spec after adversarial review iteration 2
* Refine MCP tool polish design spec after adversarial review iteration 3
* refactor(context): rename memory capture service to ingest
* feat(mcp): slim research tool surface
* refactor(mcp): remove admin ports from server factory
* refactor(cli): rename text ingest memory port
* docs: update analytics skill for memory ingest
* chore: verify mcp surface rename
* Add MCP tool polish v1 surface change plan
* feat(context): polish mcp tool metadata
* fix(context): enforce resolved semantic layer compute sources
* feat(context): emit mcp query progress stages
* fix(context): keep mcp progress event internal
* Add MCP tool polish v1 metadata & progress plan
* Fix CI snapshot and docs checks
|
2026-05-16 11:39:55 +02:00 |
|
Andrey Avtomonov
|
b759a4a286
|
feat(mcp):added MCP server (#97)
* docs(specs): design research-agent MCP tools and ktx mcp daemon
Adds the 2026-05-14 design spec for exposing four new MCP tools
(discover_data, entity_details, dictionary_search, sql_execution),
shipping a ktx-research skill, and introducing an HTTP-only ktx mcp
daemon so external agents can use KTX as a research-capable context
layer.
* Refine research-agent MCP tools spec after adversarial review iteration 1
* Refine research-agent MCP tools spec after adversarial review iteration 2
* Refine research-agent MCP tools spec after adversarial review iteration 3
* Refine spec: drop connectionName compat carve-out and ground summary/snippet provenance per kind
* feat(daemon): validate read-only SQL with sqlglot
* feat(context): expose read-only SQL validation port
* feat(context): register MCP sql execution tool
* feat(context): execute MCP SQL through validated connector path
* test(context): update SQL analysis port fixtures
* docs: add research-agent MCP sql execution foundation plan
* feat(context): add scan-backed entity details service
* feat(context): register MCP entity details tool
* feat(context): expose local MCP entity details
* test(context): align entity details scan fixtures
* docs: add research-agent MCP entity_details plan
* feat(context): add dictionary search service
* feat(context): register MCP dictionary search tool
* feat(context): expose local MCP dictionary search
* docs: add research-agent MCP dictionary_search plan
* feat: add MCP discover data service
* feat: expose discover data MCP tool
* feat: wire local discover data MCP port
* docs: add research-agent MCP discover_data plan
* feat(cli): add mcp http security helpers
* feat(cli): host mcp over streamable http
* feat(cli): manage mcp daemon lifecycle
* feat(cli): add ktx mcp commands
* fix(cli): stabilize mcp daemon verification
* docs: add research-agent MCP http daemon plan
* feat(cli): install KTX research skill
* feat(cli): configure MCP clients in setup agents
* feat(cli): support Claude local MCP setup scope
* docs: add research-agent MCP setup-agents plan
* refactor(context): use connectionId in warehouse verification tools
* docs(context): update ingest verification prompts for connectionId
* docs: add research-agent MCP ingest contract convergence plan
* chore: build runtime artifacts in conductor setup
---------
Co-authored-by: Andrey Avtomonov <7889985+andreybavt@users.noreply.github.com>
|
2026-05-15 02:35:09 +02:00 |
|