Skip to content

ADR-012: Translation Augmentation Boundary

Palamedes is now the intended Rust-first replacement for Lingui, not just a cleaner extraction and runtime toolchain.

Status: Accepted Date: 2026-03-30

Context

That creates a new architectural question:

  • which translation workflow capabilities belong in Palamedes Core as reusable local substrate
  • which capabilities should remain outside Core because they are product-specific or account-bound

If Palamedes stops too early, higher-order translation workflows will rebuild repo, catalog, QA, and metadata semantics elsewhere. If it absorbs too much, it risks turning the OSS core into a hosted translation product in disguise.

Decision

Palamedes should own host-neutral translation workflow primitives when they are local semantic concerns.

That includes future support for:

  • PO entry selection and delta targeting
  • context packaging inputs from catalogs and source metadata
  • glossary and protected-term loading and matching
  • deterministic QA issue generation
  • PO metadata parser/formatter/hash helpers
  • report data structures
  • bounded orchestration helpers that are not account- or provider-specific

Palamedes should not own:

  • remote model execution
  • provider routing
  • account or entitlement logic
  • billing, usage enforcement, or product-specific policy packs

Those remain valid concerns for Palamedes+ or other higher-order products.

Consequences

  • Translation-support code in Palamedes is justified when it removes duplicated local semantics across products.
  • The Core/Plus split remains commercially meaningful because the managed engine stays outside Core.
  • Future workflow work should first ask whether the concern is local semantic substrate or remote/account-bound product behavior.