Skip to content

mcp-data-platform-v0.8.1

Choose a tag to compare

@github-actions github-actions released this 27 Jan 18:00
· 420 commits to main since this release
c4452b8

Lineage Configuration Wiring + Timeout/Cache Implementation

This release completes the lineage-aware semantic enrichment feature introduced in v0.8.0 by wiring configuration through the platform and implementing timeout and caching for lineage resolution operations.

Features

Lineage Configuration Wiring

  • SemanticConfig now includes the Lineage field for configuring lineage-aware column inheritance
  • Platform properly passes lineage configuration to the DataHub semantic adapter
  • Example configuration added to configs/platform.yaml

Lineage Resolution Timeout

  • Configurable timeout for lineage resolution operations via lineage.timeout
  • Prevents runaway queries when DataHub is slow or unresponsive

Lineage Resolution Caching

  • Thread-safe caching of lineage resolution results via lineage.cache_ttl
  • Reduces redundant API calls to DataHub for repeated column lookups
  • TTL-based expiration with automatic cleanup

Configuration

semantic:
  provider: datahub
  instance: primary
  lineage:
    enabled: true
    max_hops: 2
    inherit:
      - glossary_terms
      - descriptions
    conflict_resolution: nearest
    prefer_column_lineage: true
    cache_ttl: 10m    # Cache lineage results
    timeout: 5s       # Timeout for lineage operations

Testing

Added comprehensive test coverage:

  • YAML configuration parsing
  • Platform-to-adapter wiring verification
  • Adapter lineage behavior (enabled/disabled)
  • Cache functionality (TTL, expiration, copy semantics)
  • Timeout functionality (context deadline)

Files Changed

  • pkg/platform/config.go
  • pkg/platform/platform.go
  • pkg/platform/config_test.go
  • pkg/platform/platform_test.go
  • pkg/semantic/datahub/adapter.go
  • pkg/semantic/datahub/adapter_test.go
  • pkg/semantic/datahub/lineage_resolver.go
  • pkg/semantic/datahub/lineage_resolver_test.go
  • configs/platform.yaml

Upgrade Notes

No breaking changes. Existing configurations continue to work. To enable the new caching and timeout features, add cache_ttl and timeout to your semantic.lineage configuration.

Changelog

Others

Installation

Homebrew (macOS)

brew install txn2/tap/mcp-data-platform

Claude Code CLI

claude mcp add mcp-data-platform -- mcp-data-platform

Docker

docker pull ghcr.io/txn2/mcp-data-platform:v0.8.1

Verification

All release artifacts are signed with Cosign. Verify with:

cosign verify-blob --bundle mcp-data-platform_0.8.1_linux_amd64.tar.gz.sigstore.json \
  mcp-data-platform_0.8.1_linux_amd64.tar.gz