Skip to main content

Meridian OpenSearch Adapter

meridian-storage-opensearch is the independently released Meridian V1 adapter for eventually consistent structured Catalog search projections on OpenSearch. It is one Python distribution in one public Apache-2.0 repository.

Capabilities

The sole operation surface is meridian.structured.search@1.0.0. The adapter provides:

  • closed, fingerprinted mappings for full-text and declared document-path projections;
  • unrestricted BCP 47 language metadata with ICU fallback, with English and Chinese initial conformance;
  • deterministic document identities, externally versioned upserts, tombstones, and bounded bulk partial outcomes;
  • mapping-first Query V1 translation for the released logical operator allowlist;
  • mandatory tenant/scope, Resource, and tombstone filters;
  • signed search_after cursors, plus deployment-conditional point-in-time cursors;
  • logical RecordRef results, bounded facets/highlights, and fail-closed partial-search handling;
  • explicit generation create/verify/activate/rollback/retire hooks with atomic alias cutover; and
  • authenticated engine, ICU plugin, topology, health, alias, analyzer, replica, and mapping probes.

The exact capability manifest, supported engine patch releases, and hard limits are available from adapter_descriptor(), capability_manifest(), and query_capabilities().

Install

python -m pip install meridian-storage-opensearch==1.0.0

The distribution requires the released Meridian Core, Query, and Semantics packages at exactly 1.0.0. Artifact hashes and locked design revisions are recorded in compatibility.json.

Configure through a Meridian Binding

Platform or Vangu IaC supplies the endpoint or service reference, secret references, compiled layouts, topology expectations, and exact capability fingerprint. Credentials never belong in an endpoint URL or settings document.

{
  "adapterId": "org.meridian.storage.opensearch",
  "engineProfile": "opensearch",
  "engineVersion": "2.19.1",
  "serviceRef": "platform://search/case-index",
  "physicalNamespace": "meridian",
  "requiredCapabilityFingerprint": "sha256:<64 hex characters>",
  "settings": {
    "indexPrefix": "meridian",
    "layouts": {
      "structured:investigation.articles": {
        "formatVersion": "meridian.opensearch.layout.v1"
      }
    },
    "requiredPlugins": ["analysis-icu"],
    "pitEnabled": true
  }
}

layouts must contain the complete value returned by MappingCompiler.compile(...).to_dict(); the abbreviated object above only illustrates placement. Use expected_capability_fingerprint(engine_version, settings) when producing the Binding pin.

Projection and search APIs

Adapter-internal projection workers use ProjectionExecutor with an IaC-selected write alias. Consumers do not receive this object and never see aliases, index names, mappings, analyzers, or OpenSearch DSL. Consumers submit released mapping-first Expressions or serialized Operations through Meridian Core.

The projection is always derived and eventually consistent. A successful authoritative write does not imply immediate search visibility. refresh=wait_for is available to controlled projection and conformance workflows; it is not an authoritative transaction guarantee.

Ownership boundary

This package owns translation, mappings, analysis definitions, indexing requests, cursor behavior, generation hooks, probes, and redacted engine-failure normalization. It does not create a Search or Projection Catalog and does not expose native queries, regex, wildcard/query-string syntax, scripts, credentials, endpoints, or physical lifecycle details.

Platform/Vangu IaC owns engine selection, provisioning/reference, state, identity and ACLs, migration orchestration, recovery, and lifecycle. See architecture, migrations, and the failure model.

Verify

python -m pytest -q tests/unit tests/contract tests/packaging
./scripts/run-single-conformance.sh
./scripts/run-cluster-conformance.sh
python -m build
python scripts/verify_artifacts.py dist

The Docker harness pins OpenSearch 2.19.1 by digest and installs its matching analysis-icu plugin. Cluster conformance uses three eligible/data nodes, one replica, green-health verification, and a deliberate node loss. See conformance evidence.

License and security

Licensed under the Apache License 2.0. See LICENSE, NOTICE, and SECURITY.md.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

meridian_storage_opensearch-1.0.0.tar.gz (113.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

meridian_storage_opensearch-1.0.0-py3-none-any.whl (54.3 kB view details)

Uploaded Python 3

File details

Details for the file meridian_storage_opensearch-1.0.0.tar.gz.

File metadata

File hashes

Hashes for meridian_storage_opensearch-1.0.0.tar.gz
Algorithm Hash digest
SHA256 c57b95fde2b46cfad069eed0c552e16351013266b102fcf66cdd4a399a9a7c59
MD5 45bcc48b50d774e185bfff99851053eb
BLAKE2b-256 4ab870e599c45a681d946312e9e372c0a54289926cad95a5306129825a2d8e6b

See more details on using hashes here.

Provenance

The following attestation bundles were made for meridian_storage_opensearch-1.0.0.tar.gz:

Publisher: release.yml on zephytiju/meridian-storage-opensearch

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file meridian_storage_opensearch-1.0.0-py3-none-any.whl.

File metadata

File hashes

Hashes for meridian_storage_opensearch-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 37264fd6e6add145cd785e616d81a95f3a1726a40589a080896281ec5e3df21b
MD5 5b2d2afc2f07f0753a55cadeaa3a607d
BLAKE2b-256 7fcf891713614f68cc03264b31121a62afcf96db22ed22405196c255b57acfae

See more details on using hashes here.

Provenance

The following attestation bundles were made for meridian_storage_opensearch-1.0.0-py3-none-any.whl:

Publisher: release.yml on zephytiju/meridian-storage-opensearch

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

This release

1.0.0 This release

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page