---
typeId: req
recordId: benac-pkg-010
fields:
  title: Interface contract binding
  statement: >-
    Each invokable package interface shall bind an interface identifier, request schema
    reference, descriptor config schema reference where relevant, output schema
    reference where relevant, declared capabilities by operation phase, artifact
    requirements by operation phase, resource requirements by operation phase, evidence
    behavior, effect behavior, and diagnostic behavior where relevant.

    Invocation shall resolve the interface identifier before request validation,
    descriptor config validation, capability review, artifact availability review,
    resource review, operation mediation, output validation, evidence recording, or
    effect recording.

    If descriptor configuration changes which capabilities, artifacts, resources,
    evidence behavior, or effect behavior apply to an invocation, the descriptor config
    schema shall define those choices and the resulting invocation contract snapshot
    shall bind the chosen values.

    Interface contract binding shall not classify the package.

    Interface contract binding shall not classify how package work is performed.
  rationale: >-
    A package can expose multiple schema-bound surfaces. The Station must know which
    contract is being invoked before validating input, reviewing authority, mediating an
    operation, or recording effects.
  verification: >-
    A package with calculator and formatter interfaces validates and invokes each
    interface under the correct schemas. A descriptor configuration that selects
    different artifacts or capabilities changes the invocation contract snapshot. A
    request valid for one interface but invalid for another fails under the wrong
    interface.
  testable: true
  status: draft
  area: BENAC-PKG
  sourceDocument: user-requested schema-first requirements cleanup
  sourceVersion: 2026-05-06
  sourceSections:
    - Package model, descriptors, and package claims
  order: 87.01
---
