Skip to content

feat: target-ontology-adapter §3 TargetOntologyAdapter protocol #100

@deanban

Description

@deanban

TargetOntologyAdapter PEP 544 Protocol with version-aware registry, entry-point discovery, and import-boundary enforcement (adapters cannot reach into sema.engine/sema.pipeline/sema.graph, transitively).

Tracking: #97. Source: openspec/changes/target-ontology-adapter/tasks.md §3.

Tasks

  • 3.1 TargetOntologyAdapter @runtime_checkable Protocol
  • 3.2 Default iter_terms mixin raising NotImplementedError
  • 3.3 register_target_adapter decorator (PEP 440 specifier strings)
  • 3.3a Add packaging to dependencies
  • 3.4 registry.get with version-aware resolution + error taxonomy
  • 3.5 registry.list
  • 3.6 Overlap-rejection guard at registration
  • 3.7 discover_entry_points (no auto-registration)
  • 3.8 Import-boundary AST test
  • 3.9 Allow-list for permitted imports
  • 3.9a Transitive-closure boundary test
  • 3.10 isinstance runtime-check test
  • 3.11 Missing-method registration rejection test
  • 3.12 Registry error-taxonomy tests
  • 3.12a Non-overlapping OMOP version-range routing test
  • 3.13 Boundary test against fixture importing sema.engine
  • 3.13a Transitive boundary test

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions