Skip to content

Releases: zzet/gortex

v0.35.2

23 May 22:01

Choose a tag to compare

Changelog

  • 547451f Bump version to v0.35.2
  • a3f62fe Reduce the README size
  • 6610fe7 chore(clones): drop redundant type on cms.Count's minCount declaration
  • 3457b46 chore(indexer): add stage markers + intra-stage heartbeats for the post-resolve pipeline
  • ac64b6f perf(clones): CMS-driven boilerplate filter for signature input
  • 3fca34f perf(clones): length-stratify + stream LSH so huge graphs stop OOMing
  • 2d08ea5 perf(extract): walk doc-comment lines backwards without allocating
  • 1fbe134 perf(go-extractor): scanGoPragmas walks backwards in place, no per-symbol line table
  • f1ce4d0 perf(graph): cache Graph.AllEdges by mutation generation
  • 5c9dc0e perf(graph): right-size FindNodesByName and add in-repo variant
  • 887ea78 perf(indexer): capture walk-time mtime so worker and post-parse skip os.Stat
  • 2da490a perf(indexer): reuse walk-time language so worker skips re-detection
  • 1685a2c perf(parser): pool EachMatch capture map + node slab across calls
  • 638627a perf(reach): lazy compute-on-first-lookup instead of eager precompute
  • 034e888 perf(resolver): pool *graph.Edge clones across ResolveAll workers
  • 6079522 update gortes restart

v0.35.1

23 May 12:39

Choose a tag to compare

Changelog

  • a462445 Bump version to v0.35.1
  • 6e57af5 feat(cli): bubbletea wizards and live dashboards across user-facing commands
  • 2acda1e fix(analysis): trim heuristic transitive noise from explain_change_impact
  • bfdb424 fix(audit): drop false-positive non-code tokens from agent-config audit
  • eabbd08 fix(mcp): check_references evidence surfaces the call-site line
  • 125d5a1 fix(mcp): encodeSubGraph emits edge line + file_path so duplicates split
  • 131c393 fix(mcp): find_declaration fans out across MultiIndexer in multi-repo mode
  • b69864e fix(mcp): find_import_path respects target language and Go-qualified names
  • 01acd6e fix(mcp): make notebook persistence honest and wire a daemon fallback
  • 7b7823f fix(mcp): plan_turn anchors on identifier-shape keywords first
  • 150410a fix(mcp): plan_turn promotes exact-name matches before BM25 fallback
  • e0b4b4a fix(mcp): route search_text through MultiIndexer in multi-repo mode
  • 656b612 fix(mcp): suggest_pattern elides long source blocks by default
  • c660be2 fix(mcp): tighten store_memory / save_note auto-link false positives

v0.35.0

23 May 10:57

Choose a tag to compare

Changelog

  • 1293214 Bump version to v0.35.0
  • 28bafa7 chore: relicense gortex under Apache 2.0
  • 742d066 fix(astquery): route .tsx targets through the tsx grammar so JSX SAST compiles
  • bf1a0d2 fix(mcp): cap tools_search response bytes so select: stays inline
  • 6d24db3 fix(mcp): default lazy-tools registry to off so promoted tools reach stdio clients
  • 7de1ce8 fix(mcp): fan record() out to a process-wide tokenStats aggregate
  • 79fe299 fix(mcp): find_usages emits the call-site line, not the caller's start
  • 3fa743c fix(mcp): honest format=gcx description on status-shape tools
  • e9258a5 fix(mcp): rename_symbol description matches plan-only behaviour
  • e177025 fix(mcp): trimGCXBytes keeps one row when every row crosses the cap
  • bbc3840 fix(parser): gate viper config_key extraction on the file's import set

v0.34.0

23 May 07:50

Choose a tag to compare

Changelog

  • 4de571a Bump version to v0.34.0
  • a0eb320 chore: gofmt sources realigned by the wave merge
  • 9fbf7ef chore: lint — close server.Close errcheck and drop unused decodeResp
  • 510c0b4 config: isolate XDG_CONFIG_HOME in TestDefaultGlobalConfigPath_HonorsHomeChange
  • 91fa164 daemon: drop unused isTruthyEnv helper from the embedder rewiring
  • fab6f8b embedding: cover the static GloVe retriever and align the vector-index dimension default
  • bd74ab2 embedding: embed via a bounded worker pool for API-backed providers
  • e96b6d9 embedding: enable static semantic search by default and persist the daemon vector index
  • e5ae59a embedding: split large symbols into AST windows and de-chunk vector hits
  • 2f1d8be feat(contracts): message-broker topic edges
  • 3c7f82c feat(edit): content-hash guard against stale writes
  • a2133ec feat(lsp): handle dynamic registerCapability and unregisterCapability
  • 5c0ae52 feat(lsp): passive attach via connect: configuration
  • d1ebd0b feat(overlay): branching and parallel speculative sessions
  • de80b27 feat(refactor): cascade safe-delete orphan propagation
  • bfa958e feat(refactor): move and inline symbol tools
  • baea30c mcp: add a cursor-based stateful navigation tool
  • ee33a88 mcp: add a token-budgeted graph traversal tool
  • a28ef22 mcp: add a use-site to declaration resolver
  • 87b711a mcp: add an ad-hoc graph-query escape hatch
  • 7e3dd21 search: bridge query vocabulary with equivalence classes
  • 7a6f9ad search: defend against degenerate keyword-soup queries
  • d887bf2 search: index documentation prose as a first-class corpus
  • afb2ae6 search: inherit symbol associations per query keyword
  • c3d2ab8 search: rerank on HITS authority with a hub penalty
  • 0e39138 search: scope queries to monorepo service sub-paths
  • a607179 search: surface enclosing symbols and group usages by file

v0.33.0

22 May 18:34

Choose a tag to compare

Changelog

  • 66bd582 Bump version to v0.33.0
  • c2ccbd4 Update Makefile
  • 2c6bb2f Upgrade deps after security alert
  • e9c8388 claudemd: calibrate graph-over-source guidance in generated instructions
  • e4383c7 cmd/gortex: add repos command with --json output
  • 162aa8d cmd/gortex: guard the daemon snapshot against a shrink collapse
  • 6233e31 cmd/gortex: update graph.Node wire fingerprint for absolute_file_path
  • 8904795 elide: salience-aware truncation for oversized symbols
  • 5a76c59 elide: selective body compression via a keep-predicate
  • 53d3458 fix linter issue
  • eb15df1 hooks, mcp: guide multi-repo cwds and fix repo-prefix matching
  • e688d87 hooks: add adaptive anti-grep nudge posture
  • ce447ee hooks: add consult-then-unlock pre-tool posture
  • 431c172 hooks: auto-approve gortex MCP tools under permissive permission modes
  • c2b48db indexer, mcp: fix pre-existing staticcheck lint
  • c9a13b0 indexer: add adaptive-interval watcher poller fallback
  • 603e832 indexer: detect and skip minified bundles and sourcemaps by content
  • bd9ac32 indexer: garbage-collect vanished worktrees and root edits per worktree
  • 1c9baef indexer: normalize non-ASCII paths to NFC across discovery, keys, watchers
  • a53ba1b indexer: skip structural reindex for content-inert file saves
  • d10ba57 llm/provider/ollama: size num_ctx from the request
  • 2f31a10 llm/provider: retry hollow HTTP-200 responses across providers
  • 2a5440c mcp, graph: surface absolute_file_path on symbol results
  • e285838 mcp: add a runtime planning/editing mode lock
  • fd7af13 mcp: add a workflow phase-enforcement state machine
  • 6bc72aa mcp: add in-band warmup fast path for tool calls
  • b58afeb mcp: add named saved scopes for repeated multi-repo filtering
  • 80d3ed4 mcp: add per-host runtime tool contexts
  • 9f9694b mcp: add query_project for cross-project reads without a scope switch
  • 75594f5 mcp: add reindex_repository tool for incremental re-indexing
  • 2e3713d mcp: context-pack dedup via a pack-root round-trip
  • 8df5475 mcp: embed a project-scaled exploration-call budget in tool descriptions
  • c4637b9 mcp: graded-fidelity context manifest for smart_context
  • d7260b0 mcp: omission notes in tool response envelopes
  • b2153a2 mcp: post-filter primitives over a response-handle buffer
  • 1e7addb mcp: signal under-return in tools_search and advise exact-name retry
  • f1a2dab mcp: token-cost estimate mode for smart_context
  • d3ada8a mcp: tolerate hallucinated and mistyped tool parameter names
  • 2a1e748 parser/languages: extract markdown wiki-links and frontmatter relations
  • a1767eb parser/languages: unify bash, css, elixir extraction into a single cursor walk
  • 55868ba parser: content-sniffing fallback for ambiguous and unknown file types
  • 8ad8b2c parser: register user-supplied tree-sitter grammars from config
  • e94fafc platform: consolidate config/data/cache paths behind an XDG resolver

v0.32.0

21 May 22:56

Choose a tag to compare

Changelog

  • 32851f6 Actualise agents intructions
  • cc873c1 Bump version to v0.32.0
  • 523f036 analyze, mcp: add a hierarchical multi-resolution graph view
  • 1e5eb9b analyze, mcp: add sampled betweenness centrality to hotspot scoring
  • 1a512de analyze, mcp: recompute communities incrementally for changed packages
  • 999ca2b analyze: add a graph connectivity-health analyzer
  • 095e7bc graph: make edge provenance part of edge identity
  • 510aa94 indexer, graph: diffuse similarity into semantically-related edges
  • 6f4f2ad indexer, parser, todos: cut warmup latency and indexing allocations
  • ca3112c indexer, parser: resolve symbols through wildcard and pub-use re-exports
  • a4fb694 indexer, resolver: resolve npm-alias package imports to local packages
  • 9fe8d8a llm: adaptive chunk-bisection retry on context overflow
  • 957a3a5 llm: add Codex CLI subprocess provider
  • db741a7 llm: graph-aware model routing for the ask agent
  • 36cf461 mcp, graph: annotate navigation results with concurrency-safety hints
  • bd432ad mcp: add notifications/graph_invalidated hot-reload topic
  • 91a5bd1 mcp: add tool_profile introspection tool
  • 5a151a5 mcp: defensive prompts/get args + tool-text control-char scrub
  • 58917a4 mcp: flag possible extraction gaps on zero-edge query results
  • d8cd3e3 mcp: populate the server-level instructions field on initialize
  • fc8c7e1 mcp: prompt-injection screening middleware on the tool surface
  • 6c5f33e mcp: schema self-lint gate over the whole tool surface
  • 3d85110 modules, indexer, resolver, graph: model package-manager workspace membership
  • 74a1fa7 release: statically link mingw runtime into Windows builds
  • 93a6202 resolver: guard cross-package name-only js/ts call edges
  • d2c5618 resolver: synthesize placeholder nodes for unresolved external calls
  • 8c6a7c6 tokens: per-model, tokenizer-aware token estimation

v0.31.0

21 May 07:50

Choose a tag to compare

Changelog

  • 25753e0 Actualise README
  • 2e80872 Bump version to v0.31.0.pre
  • 17456a6 Merge pull request #29 from zzet/perf/graph-edge-memory
  • 5423bfe Merge pull request #30 from zzet/windows/support
  • cd4b820 README: list gortex audit + bench daemon-latency
  • 79a6152 Revise project description in README
  • 275c7e2 Update README.md
  • 5f77514 actualise readme
  • 4ba4266 add githb action example
  • 5307dd3 add windows badge
  • f02803f analyze: composite change-impact score via analyze kind=impact
  • 8a86ffc analyze: named query bundles via analyze kind=named
  • 1c569cd analyze: spectral clustering as an analyze kind=clusters algorithm
  • 3677f00 analyze: tests_as_edges view over the test→code edge layer
  • eb717f5 artifacts: track non-code knowledge files as graph nodes
  • c37d5d4 astquery: pluggable TOML domain-extractor rules
  • 303bc8e astquery: ship Bandit-parity SAST rule library across 8 languages
  • 4469c03 audit + landing: gortex audit --badge SVG shield + per-tool savings landing page
  • a7d0f4b bench: daemon-mode MCP-tool latency (p50/p95/p99 per tool)
  • 257f3ae bench: publish daemon resident memory in the perf table
  • 0711379 chore: clear golangci-lint findings
  • 9dfad73 chore: gofmt internal/persistence/notes.go
  • 02362a3 claudecode: ship sub-agent installer (.claude/agents/gortex-*.md)
  • b0a0803 cochange: mine git history for files that change together
  • 744d13c codegen: flag Lombok / MapStruct / Kotlin generated members
  • f2e4b65 contracts: extract Swift HTTP routes (Vapor + Alamofire)
  • bab9f3a daemon: wire InitNotebook in the per-repo server bootstrap
  • ddfbe5f eval: standardized retrieval benchmark loaders
  • 0421f41 graph: store edge identity as a 128-bit hash, not a 72-byte key
  • ff29497 guards: declarative architecture layers with allow/deny enforcement
  • c52d1dd guards: dependency-cone rules atop the architecture DSL
  • c5bc705 indexer: BLAKE3 Merkle tree for incremental re-index
  • 62b6e52 indexer: assert incremental reindex converges to a full index
  • c925881 indexer: cover Merkle-mode incremental reindex
  • 3b36392 indexer: crash-resilient parser worker pool
  • e3e034d indexer: detect framework entry points (Alembic / Next.js / ASP.NET)
  • c534758 indexer: drop redundant HasPrefix before TrimPrefix in test runner
  • e0603ac indexer: edge-sanity check for edgeless reindex regressions
  • 773e9e2 indexer: fix concurrent Node.Meta race in clone/test/temporal/reach passes
  • f094be6 indexer: follow TS barrel re-export chains
  • a05cca5 indexer: honor per-directory .gortexignore files
  • 15ebf2a indexer: honor ripgrep .ignore and .rgignore files
  • b286373 indexer: intern minted node IDs, paths, and edge endpoints
  • 8905854 indexer: intern node Name and Language
  • 8e77fe6 indexer: keep untracked-but-present files indexed on git reconcile
  • 72d841c indexer: pathological-file timeout + skip telemetry
  • 024ff4b indexer: pluggable pre-ingestion content transforms
  • ddb7ca4 indexer: reuse one crash-isolation pool on the watcher path
  • 03c58bb indexer: surface and retry failed files in incremental reindex
  • 1dd7351 indexer: worktree-aware index caching under a shared base
  • e80da43 linter
  • 5068f00 lsp: advertise additional workspace folders on initialize
  • 9503b70 lsp: make server command / args / env configurable
  • 751ce5f lsp: register pyrefly and tsgo language servers
  • ce917f7 mcp+cli: add gortex_wakeup tool + gortex wakeup subcommand
  • 46bcf60 mcp/analyze: add kind=clusters + kind=concepts
  • b191de5 mcp/analyze: add kind=constructors_missing_fields
  • 55d314e mcp/analyze: add kind=role classifier
  • e3c2815 mcp/analyze: hotspots gain novelty + directional ranking modes
  • 2e27bf5 mcp: add check_onboarding_performed tool
  • 7dcd3f6 mcp: add check_references tool
  • d6285e7 mcp: add edge_audit graph-completeness analyzer
  • 9d7dd87 mcp: add env_var_users, sql_call_sites, fixes_history analyze kinds
  • 47fceda mcp: add generate_skill tool
  • 75e4357 mcp: add get_architecture tool
  • cf1b42c mcp: add get_churn_rate tool
  • 452698e mcp: add get_coupling_metrics tool
  • 32638ce mcp: add get_extraction_candidates tool
  • d0be2c6 mcp: add get_knowledge_gaps tool
  • 12e301d mcp: add get_surprising_connections tool
  • 5a422ee mcp: add hierarchical memories (global scope + edit_memory + rename_memory)
  • b696b8d mcp: add list_inspections + run_inspections tools
  • 011b8e8 mcp: add replay_episode tool
  • 68d0e84 mcp: add repository-local persistent notebook
  • b847ac6 mcp: add safe_delete_symbol tool
  • 5a9f0a5 mcp: add verify_citation tool
  • 9454fe0 mcp: fix export_context "invalid character 'G'" under GCX-resolving sessions
  • 70a5a55 mcp: lazy tool registration with tools_search discovery
  • 53d87a8 mcp: suggest_queries cold-start exploration tool
  • 977ac84 parser+indexer: detect JS/TS test runner; stamp Meta["test_runner"]
  • 30d17f1 parser: .NET deep dive — XAML, DI, MVVM, COM surfaces
  • 71a056e parser: extract Jupyter .ipynb + Databricks notebook cells
  • 43bc7d0 parser: never pool a parser whose parse errored
  • 6624e94 parser: pool tree-sitter parsers across ParseFile calls
  • 70686c6 persistence: cross-process advisory lock on the index store
  • c2878b6 persistence: key index snapshots by (repo, branch)
  • 812539c query: cross-repo RRF fusion for multi-repo search
  • 50634a0 rerank: per-query-class bm25/semantic weighting
  • 2d171f1 scip: definitions-only fast path for the C#/.NET coverage helper
  • 6f1d280 search/mcp: add Retriever protocol + graph_completion adapter
  • 894f106 search: Porter stemming + stopword filter for the FTS path
  • 553d14a search: deterministic tie-breaking across result-set tools
  • 91dab35 search: field-qualified query syntax with fuzzy fallback
  • 0ae22a8 search: per-file diversification of search_symbols results
  • ebfc4c4 search: ship FTS stemming opt-in, correct published recall numbers
  • 16b624d search: trigram code-search index and search_text tool
  • 2f4d395 tokens: content-addressed disk cache for token counts
  • 4fb7ba1 windows: add native Windows support

v0.30.0

18 May 22:45

Choose a tag to compare

Changelog

  • 14788f0 Actualise README
  • 5f17943 Bump version to v0.30.0
  • fc70ac8 Linter
  • f510302 Merge pull request #27 from zzet/dependabot/github_actions/actions-minor-patch-bcb0c4251a
  • f7f648c README: list gortex bench + gortex gain in CLI tables
  • fba7c1e README: surface bench perf / bench tokens-efficiency / eval baselines / eval quality / eval embedders list
  • 55e64e8 bench/perf: reference-repo perf table (cold-index + search + impact + incremental + DB)
  • e1df92a bench/wire-format: dual-tokenizer scorecard (cl100k + Claude Opus 4.7)
  • 5ec06fd bench: retrieval-baselines NDCG@10 harness + SWE-bench results template
  • f278957 bench: token-efficiency vs ripgrep+read + aggregated BENCHMARK.md
  • b81b14d ci(deps): bump github/codeql-action in the actions-minor-patch group
  • f24cca7 cli: gortex bench — user-facing benchmark suite + USD-per-model card
  • c74e427 cli: gortex gain — forward-looking USD savings projection + history
  • ef15e8b eval: methodology docs + quality measurement infra + embedder model registry
  • 66bf87b rerank/path-penalty: extend test-file detection to 16 languages
  • a6f0439 rerank: file-coherence + path-penalty + def-keyword bias + auto-adaptive α
  • 6be745e savings: bar-chart dashboard + per-event JSONL log
  • b029fa3 wiki+docs+exporter+githooks: ship gortex wiki + docs bundle + mermaid export + post-commit hook
  • f485109 wiki: clear lint findings

v0.29.0

17 May 22:50

Choose a tag to compare

Changelog

  • 9e5e913 Bump version to v0.29.0
  • 8c9c25b Rebuild graph explorer; group community cards by sibling parent
  • 62a3fe9 analysis: per-kind incoming-edge map + default-skip noisy dead-code kinds
  • a07c2b8 deadcode: respect Go's /internal/ visibility rule
  • c79d440 deadcode: respect Go's /internal/ visibility rule
  • 3cb40fa resolver+query: route type-position edges through resolveTypeRef
  • ad98c41 resolver: also promote EdgeReads → EdgeReferences for KindFunction targets
  • 90ba1bb resolver: promote LSP-bound EdgeReads → EdgeReferences on Method targets
  • a96ac0d snapshot: discard corrupted snapshots, force fresh index
  • 3f0d807 snapshot: stamp + verify daemon binary fingerprint on load

v0.28.0

17 May 15:15

Choose a tag to compare

Changelog

  • 60e6fad Bump version to v0.28.0
  • 3dd6a93 README: list 12 Claude Code slash commands (5 → 12, post H2 ship)
  • fd2985d agents/claudecode: add 7 workflow skills (12 → 19, three groups)
  • 626c793 agents/claudecode: add 7 workflow-encoded skills enforcing tool-call order
  • 6ebbdf7 analysis, reach, indexer: precompute incoming-reach index for sub-ms blast-radius queries
  • 1d90e69 claudemd, agents/cursor, agents/kiro: enforce MANDATORY tool-use language in generated configs
  • 0a88e97 graph, mcp, dataflow: surface coarse provenance tier on edges + filterable dataflow paths
  • bb0ea33 graph, releases, parser/languages: schema-parity audit + KindRelease emitter + TS throws / Scala+Swift annotations
  • 56d7b20 hooks, agents/claudecode, cmd: add --hook-mode=enrich (PostToolUse augmentation)
  • f9aa679 indexer, mcp, daemon: wire daemon MultiWatcher into get_recent_changes / get_symbol_history
  • 2c4e608 linter
  • 2c0669f llm/provider: add gemini, bedrock, deepseek backends
  • 9b5c991 mcp, daemon: add readiness / health / stale_refs notification channels
  • 2b82970 mcp, persistence, agents: add development memories — store_memory / query_memories / surface_memories
  • 337e8c1 mcp, persistence, agents: add session memory — save_note / query_notes / distill_session
  • 722b061 mcp/analyze, astquery: add unsafe_patterns bundled detector
  • 2e28cd9 mcp/analyze: add health_score composite analyzer
  • f1cbba2 mcp/analyze: race_writes + unclosed_channels concurrency analyzers
  • e55c4e5 parser/languages, sql, mcp/analyze: KindString-anchored sql_rebuild + log_events + error_msg registry
  • b0b0f1c resolver, parser/languages: scope-based static resolution for c / c++ / java / php
  • bf3f67a resolver/temporal: workflow→activity dispatch resolution (go + java SDKs)