boxferry-compose 0.10.0

ComposeLens adapter for BoxFerry's format-neutral container application model
Documentation

boxferry-compose

boxferry-compose maps source-aware Docker Compose projects from compose-lens into BoxFerry's format-neutral application model and exports neutral applications as Compose documents.

The adapter does not read files, inspect a runtime, or select profiles implicitly. Compose input and output always pass through the neutral model, including Compose-to-Compose conversion, so fidelity decisions remain visible to BoxFerry's loss policy.

Aliases in service network attachments retain the native per-scalar sensitivity classification. Public literals and explicitly public interpolation values remain ordinary aliases; sensitive substitutions remain protected. The adapter corroborates the exact service/network path, ordered values and source spans against the same merged project. Missing or mismatched metadata keeps all aliases protected. This does not authorize protected health commands, addresses or other values, and changes no diagnostic or report redaction policy. The existing native dependency supplies this metadata; no dependency, tooling, operational pin or Renovate ownership change is required.

Compose export refuses the entire candidate when any alias in a service network attachment is protected, under every loss policy, rather than emitting unmarked private text or silently dropping a service alias. Neutral values and provenance remain available, with indexed, value-free unsupported diagnostics. Public service aliases can export and freshly reload their text exactly. Successful protected-service-alias fresh-text reimport and recovery of sensitivity from arbitrary historical plaintext are not promised; see ADR 0073.

Group-network aliases are not serialized. The existing structured unsupported outcomes and partial loss-policy handling for unmapped group networking/runtime settings remain unchanged.

Most applications should use the boxferry facade.

BoxFerry documentation · Rust API · Source code

Licensed under the Mozilla Public License 2.0.