Skip to content

Define integrations crate split and ordered configuration - #1194

Draft
aram356 wants to merge 12 commits into
mainfrom
spec/split-integrations-crates
Draft

aram356 wants to merge 12 commits into
mainfrom
spec/split-integrations-crates

Conversation

@aram356

@aram356 aram356 commented Sep 24, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • Defines trusted-server-integrations as the static Rust composition crate for all concrete integrations and trusted-server-integrations-js as the owner of integration browser sources and assets.
  • Defines one ordered [integrations] inventory with explicit enabled, provider instances nested under their owning integration, and configuration order as the observable runtime priority.
  • Replaces APS, Prebid, mediator, lifecycle, and browser reverse dependencies with narrowly typed neutral contracts while preserving current runtime, CLI, cache, and renderer behavior except for the documented configuration and ordering changes.
  • Splits delivery into a behavior-preserving crate-boundary milestone and a separately gated ordered-configuration cutover with dual-read rollout and rollback protection.

Scope guardrails

Intentional compatibility changes

  • Auction providers move beneath their owning integration and references become qualified.
  • Retained integrations require explicit enabled.
  • Configuration declaration order replaces lexical provider priority and controls ordered hooks and browser dispatch.
  • APS providers require an enabled APS parent.

Review focus

  • Rust/WASM dependency direction and composition ownership.
  • Ordered TOML-to-config-store-to-runtime semantics.
  • CLI recovery behavior, secret preprocessing, and schema cutover safety.
  • Browser shared-state ownership, DOM ordering, and APS/Prebid/GPT renderer lifecycle parity.

Verification

  • npm run check in docs (ESLint, Prettier, and VitePress build).
  • git diff --check origin/main...HEAD.
  • Final independent red-team review found no implementation-blocking issues against origin/main at 4c6d26a16.

Rust and browser runtime test suites were not run because the PR is documentation-only.

@aram356
aram356 marked this pull request as draft September 24, 2026 06:00
@aram356 aram356 self-assigned this Sep 24, 2026

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant