Skip to content

[ARCHITECTURE] Add the OpenAPM transformation and loss-report contract #2110

Description

@danielmeppiel

Is your feature request related to a problem? Please describe.
APM performs target-specific transformations across multiple primitives, but there is no shared machine-readable contract accounting for preserved, transformed, defaulted, dropped, or rejected fields. Loss and policy injection can therefore be silent or reported inconsistently.

Describe the solution you'd like
Implement the reusable foundation from docs/superpowers/specs/2026-07-10-openapm-standards-first-translation-design.md:

  • Immutable RenderResult accounting.
  • Capability and transformation registries.
  • Integration with DiagnosticCollector and CommandLogger.
  • Secret-safe field-path diagnostics.
  • Existing OpenAPM requirements-manifest and tests/spec_conformance integration.
  • Golden fixtures that characterize current behavior without changing output.
  • Governance preventing new unreported pairwise lossy mappings.

This foundation must remain primitive-neutral; each primitive gets its own semantic model.

Describe alternatives you've considered
Continue ad hoc diagnostics in each integrator, adopt one vendor schema as the shared pivot, or build one universal primitive IR. All three either preserve current drift or create an over-broad abstraction.

Additional context
Parent design: docs/superpowers/specs/2026-07-10-openapm-standards-first-translation-design.md.

This is a prerequisite for the hooks proving slice and later primitive-specific work.

Metadata

Metadata

Assignees

No one assigned

    Labels

    area/multi-targetMulti-target deploy spec, target directory creation, agent surface routing.area/testingTest infrastructure, fixtures, e2e harness, coverage.status/acceptedDirection approved, safe to start work.theme/portabilityOne manifest, every target. Multi-target deploy, marketplace, packaging, install.type/architectureDesign-impacting change (new module, pattern, contract).

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    Status
    Todo

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions