Skip to content

docs(examples): add targeting migration adapter - #2936

Merged
bokelley merged 3 commits into
mainfrom
chicago-v22
Sep 15, 2026
Merged

bokelley merged 3 commits into
mainfrom
chicago-v22

Conversation

@bokelley

@bokelley bokelley commented Sep 15, 2026 •

Copy link
Copy Markdown
Contributor

Summary

  • add a packed, compile-gated existing-platform targeting adapter using public SDK exports
  • demonstrate omit / clear / set translation across create, update, provider operations, durable accepted state, and readback
  • reject unsupported clears and unmapped dimensions before provider or store mutation
  • document the migration boundary requested in the downstream rc.37 feedback
  • add a patch changeset because the example ships in the npm artifact

Verification

  • npm run build:lib
  • npm run typecheck:examples
  • node --test test/examples/targeting-input-existing-platform.test.js
  • npm run format:check
  • npm run ci:docs-check
  • npm run check:package-size
  • npm run check:packed-artifact
  • npm run verify:package (Node 24; packed public-import examples compile and clean-room checks pass)

Full npm run ci:quick reached unrelated environment/resource failures: the inherited DATABASE_URL changed one existing test's expectation (the test passes with that variable unset), and a later parallel batch exhausted the VM's 4 GiB Node heap. The focused and packaging checks above pass.

Expert review additionally caught two protocol details before merge: accepted create state now materializes the selected product's strict defaults before applying omit/clear/set commands, and the example does not expose whole-overlay null because canonical 3.2 requests permit only per-dimension clears.

Follow-up to #2906 and the concrete downstream migration request in #2906 (comment). This changes documentation/examples and helper documentation only; it does not change SDK targeting semantics or runtime APIs.

@bokelley
bokelley enabled auto-merge (squash) September 15, 2026 10:32
Comment thread package.json Resolved

@aao-secretariat aao-secretariat Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ladon verdict: Request changes

Request changes — 1 blocking finding.

Blocking findings

  • package.json:535 — Missing .changeset/*.md despite adding the new example (examples/targeting-input-existing-platform.ts) to the published package files array. Per the repo's mandatory changeset-vs-wire-impact rule, touching a package.json files path without a changeset is a high finding.

The rest of the PR is clean: docs/examples-only migration adapter example, guide, and test using public @adcp/sdk exports. Imports resolve, example semantics match the Targeting Input contract (DR-0020, omit/clear/set with fail-closed rejection of unsupported clears and unmapped dimensions), and there is no mock/fallback data or custom transport. Add the changeset to unblock.

Blocking findings

  • package.json:535 — Missing changeset despite adding new example to published package files array (changeset-vs-wire-impact: high)

@aao-secretariat
aao-secretariat Bot dismissed their stale review September 15, 2026 10:45

Superseded by a later Ladon review that rechecked and resolved its blocking findings.

@aao-secretariat aao-secretariat Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ladon verdict: Approve

Approve — prior blocker resolved, clean pass.

The sole prior blocking finding (missing changeset for adding examples/targeting-input-existing-platform.ts to the published package.json files array) is now resolved by .changeset/calm-targeting-adapters.md (patch), correctly scoped for an additive example with no library behavior change. The create path rework to applyTargetingInput(product defaults, request) with fail-closed rejection of unsupported clears and unmapped dimensions was verified against helper contracts, generated types, and tests — no witness-not-translator or transport-client concerns.

No critical/high/medium findings in this run. No author-team gate, gated_paths: false, high_risk: false. Falls through to row 9.

@bokelley
bokelley requested a review from bmilekic September 15, 2026 10:54
@bokelley
bokelley merged commit 6e11406 into main Sep 15, 2026
57 of 59 checks passed
@bokelley
bokelley deleted the chicago-v22 branch September 15, 2026 10:54
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