v0.1.0: Performance, incremental indexing, async boundary detection

Performance & quality:
- Transaction wrapping (Querier interface, single tx per index run)
- Composite indexes on edges table for faster traversals
- Cypher WHERE push-down (=, CONTAINS, STARTS WITH → SQL)
- golangci-lint with 25 linters, zero violations
- 11 benchmarks for pipeline, search, and BFS

Incremental indexing:
- Content-hash based file change detection
- Dependency-aware two-level invalidation (changed + dependents)
- Stale file cleanup for deleted files

Async boundary detection:
- Project-wide env var URL scanner (Dockerfile, YAML, .tf, .sh, .env,
  TOML, properties files) with 3-layer secret exclusion
- Env var default extraction in constant propagation (getEnv, os.environ.get,
  process.env with ||/?? fallback)
- ASYNC_CALLS edge type for Cloud Tasks, Pub/Sub, SQS/SNS, RabbitMQ, Kafka
  dispatch patterns, separate from synchronous HTTP_CALLS
- Tool descriptions updated with all edge types

Other improvements:
- Type inference for method dispatch resolution
- Interface implementation detection (IMPLEMENTS edges)
- Improved tool descriptions for discoverability
This commit is contained in:
Martin Vogel
2026-02-25 13:43:57 +01:00
parent b3acbf8de2
commit 97284a35fa
45 changed files with 3901 additions and 1266 deletions
+15 -1
View File
@@ -12,6 +12,20 @@ permissions:
contents: write
jobs:
lint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-go@v5
with:
go-version: "1.23"
- uses: golangci/golangci-lint-action@v6
with:
version: latest
args: --timeout=5m
build-unix:
strategy:
matrix:
@@ -94,7 +108,7 @@ jobs:
path: "*.zip"
release:
needs: [build-unix, build-windows]
needs: [lint, build-unix, build-windows]
runs-on: ubuntu-latest
permissions:
contents: write