Skip to content

Contracts

Status: release-candidate contract for 1.0.0-rc.1 Contract version: v1 Last reviewed: 2026-08-13

This directory defines the public compatibility surface for InterLock V1. It is normative for the public API and deployment interfaces listed below. It is not a promise that every modeled or beta connector is production-certified.

The words MUST, MUST NOT, SHOULD, SHOULD NOT, and MAY are used as described by RFC 2119 and RFC 8174.

  • Shared source-role, policy, write-safety, redaction, deterministic-cache, and audit governance pipeline.
  • PostgreSQL wire proxy subset described in postgresql-v1.md.
  • HTTP source proxy described in http-proxy-v1.md.
  • MCP tool and transport surface described in mcp-v1.md.
  • MySQL/MariaDB connector semantics described in mysql-connector-v1.md.
  • Admin, configuration, migration, and Helm contracts described here.
  • S3 and DigitalOcean Spaces read and discovery paths. Governed object writes are not reachable in V1: an approved write fails because neither the MCP path nor the approval queue supplies the operation the connector needs, so no object mutation is part of the stable contract.

The beta connectors are API-compatible within V1, but their source-specific coverage and live certification depth may change. See the connector matrix.

  • Slack
  • GitHub and GitLab
  • Snowflake
  • Zendesk
  • OpenSearch and Elasticsearch
  • Qdrant as a governed source
  • Salesforce
  • Notion
  • Google Workspace
  • SAML authentication.
  • Semantic-cache serving.
  • External notification delivery.
  • Qdrant as the runtime cache/vector backend.
  • Automatic category classification.
  • Broad SaaS mutations.
  • A native MySQL wire-protocol listener.

Deferred capabilities are not part of the V1 compatibility promise. An Admin control for a deferred capability must be hidden, disabled, or labeled as planned.

Surface Contract
Compatibility and deprecation compatibility-policy.md
MCP transport and tools mcp-v1.md
MCP machine-readable schemas mcp-tools-v1.json
HTTP proxy http-proxy-v1.md
PostgreSQL proxy postgresql-v1.md
MySQL/MariaDB connector mysql-connector-v1.md
Configuration configuration-v1.md
Helm chart helm-v1.md
Database migrations migrations-v1.md
Error behavior errors-v1.md
Release process release-candidate.md

For a released version, precedence is:

  1. Security advisories for that version.
  2. The tagged release notes and migration notes.
  3. The V1 documents in this directory.
  4. Examples, guides and concept pages elsewhere in this documentation.

Older design notes and dated certification reports are kept out of the repository; where they are quoted in discussion they explain intent and prior findings, and they never override this contract.

  • Public JSON field names, MCP tool names, supported PostgreSQL behavior, documented error identifiers, Helm values, and migration history are compatibility surfaces.
  • Additive optional fields are compatible. Clients MUST ignore unknown fields unless a schema explicitly sets additionalProperties to false.
  • A security fix MAY tighten validation without a deprecation period when the previous behavior permits authorization bypass, secret disclosure, data loss, or unsafe egress.
  • InterLock does not promise byte-for-byte error prose. Consumers SHOULD use HTTP status, JSON-RPC code, stable error identifier, or SQLSTATE.
  • The Python import namespace is interlock. The ONYX_* environment prefix is a deprecated compatibility surface, honored with a warning until no earlier than 1.2.0; see compatibility-policy.md.

A stable surface requires focused unit tests, integration or compose coverage, and release-candidate evidence tied to one commit. Cloud and live-source certifications are recorded separately and never contain credentials or private resource identifiers.