StandardsModel CompatibilityChangelog

Changelog

Unreleased platform integration

  • Added ten authenticated Agent Gateway tools for standard/profile discovery, validation, comparison, resolution, report and plan retrieval, and explicit lossy/inference approval.
  • Added compatibility:read, compatibility:compute, and compatibility:approve OAuth scopes.
  • Compatibility compute can use a scoped Developer API key or a normal signed-in Biosimulant session. Private reports and plans stay with their owner.
  • Managed-run preparation can bind an exact compatibility plan ID and digest; the server revalidates the bundle, plan, workspace revision, policy, expiry, and approval receipts.
  • Added the optional biosimulant-model-compatibility Agent Skill and routed the general, composition, model-building, runtime-specific, discovery, and publication skills to the same workflow.
  • Added an administrator review and revocation screen for adapter and inference releases.

Unreleased standard changes

These docs pin the exact alpha package and bundle shown on the standard overview.

  • Python and TypeScript now implement the full rule vocabulary, profile inheritance, locks, deterministic path planning, safety limits and digest-pinned ontology or mapping snapshots.
  • The browser-safe entry point includes all public schemas and 650 profiles for offline validation in Web and Desktop.
  • The build now calculates review progress and ga_ready from checked, per-profile review records. It does not treat passing tests as scientific approval.
  • Cross-language tests compare normalized contracts, reports, plans and hashes byte for byte.
  • Reworded the standard and findings in plain English, while keeping stable profile names, URLs, statuses and reason codes.

0.1.0-alpha.2

  • Fixed the capitalization of the Biosimulant brand name in package metadata, docs and the port contract schema title.

0.1.0-alpha.1 — implementation draft

The first public alpha of the Biosimulant Model Compatibility Standard. You can use it end to end today, but formats may change before a stable release.

The standard

  • 15 JSON schemas, covering manifests, port contracts, profiles, rules, reports, plans, locks and conformance records.
  • 650 profiles across 26 domains, built from 266 contract items grouped into 30 packs.
  • 18 comparison operators, 8 comparison statuses and stable BMCS_* reason codes.
  • Three test cases for every profile, 1,950 in total: a valid contract, an invalid contract, and a comparison that must return UNKNOWN.
  • Python and TypeScript reference implementations for validation, hashing and comparison. The Python implementation can also build plans.

Biosimulant CLI

  • New biosimulant compatibility commands: validate, normalize, compare, profiles, lock, plan and conformance. Install them with pip install 'biosimulant[compatibility]'.
  • Model packages built from a model.yaml with a compatibility block now include payload/compatibility.lock.json.
  • A package build fails if the compatibility block is invalid. Loading a model fails if the ports in model.yaml don’t match the ports in its Python code.
  • Port contracts are kept when manifests are read and written, and values sent between ports during a run can be checked against their contracts.

Biosimulant platform

  • Public endpoints that serve the standard’s schemas, profiles and test fixtures.
  • Developer API endpoints to validate, compare and resolve contracts. Reports and plans are stored privately for their owner, and plans that need approval can be approved.
  • Runs started from a released lab can be linked to a stored plan. The run’s Passport records the plan, its policy decision and any approvals.
  • Ports of released models are indexed for compatibility.
  • The Hub shows whether a model declares compatibility, how many of its ports have contracts, which profiles it imports, and each port’s contract.

Documentation

  • New pages for the standard, including a searchable catalogue of all 650 profiles and an updated model.yaml reference.

Known limitations

  • No profile has been scientifically reviewed yet: 591 are candidate and 59 are draft.
  • Ontology and identifier mapping rules return UNKNOWN unless the exact digest-pinned snapshot needed by the rule is supplied.
  • A profile being machine-checkable does not mean its field choices or biological limits have been independently reviewed.
  • A stable release needs independent scientific review of every profile. See Before a stable release.