Skip to content

chore(deps): bump @adcp/client 5.15 → 5.16 + restore fresh replayed assertion#3034

Merged
bokelley merged 1 commit intomainfrom
bokelley/bump-adcp-client-5-16
Apr 24, 2026
Merged

chore(deps): bump @adcp/client 5.15 → 5.16 + restore fresh replayed assertion#3034
bokelley merged 1 commit intomainfrom
bokelley/bump-adcp-client-5-16

Conversation

@bokelley
Copy link
Copy Markdown
Contributor

Summary

  • Bump @adcp/client from 5.15.0 to 5.16.0
  • Use the newly-shipped field_value_or_absent matcher to restore positive coverage on the fresh-path replayed assertion in universal/idempotency.yaml::create_media_buy_initial
  • No training-agent code changes — the catalog + handler paths 5.15 exercised continue to pass unchanged

5.16.0 ships the two follow-ups from our last bump

  • field_value_or_absent matcher (adcp-client#873, filed from this repo). Passes when a field is absent OR present with a matching value; fails only when present with a disallowed value. The envelope-spec escape hatch we needed for replayed on fresh execution.
  • Context-rejection hints (adcp-client#870 → 5.16.0). Runner emits non-fatal context_value_rejected hints when a seller's error response's available: list would have accepted a value that traces back to a prior-step $context.* write. Pass/fail unchanged; hints surface on StoryboardStepResult.hints[].

Both upstream issues were closed by the 5.16 merge.

Spec-side change

In universal/idempotency.yaml's create_media_buy_initial step, replaced the comment block explaining the absent assertion with an actual field_value_or_absent assertion:

- check: field_value_or_absent
  path: "replayed"
  allowed_values: [false]
  description: "If reported on fresh execution, replayed must be false"

The replay step's field_value: allowed_values: [true] on replayed is unchanged.

Test plan

  • Framework mode: 52/52 clean, 393 passed / 0 failed / 37 skipped (unchanged from 5.15)
  • Legacy mode: 52/52 clean, 380 passed / 0 failed / 50 skipped (unchanged from 5.15)
  • Typecheck clean
  • Pre-commit (804/804 unit tests) green
  • CI green on push

🤖 Generated with Claude Code

…ssertion

5.16.0 ships the two follow-ups from the 5.15 bump:

- field_value_or_absent matcher (adcp-client#873). Passes when field
  is absent OR present with a matching value. The envelope-spec
  escape hatch we needed for fresh-path `replayed`.
- context_value_rejected hints (adcp-client#870). Non-fatal runner
  hints when a seller error's `available:` list would have accepted
  a prior-step `$context.*` value.

Uses the new matcher to restore positive coverage on the
`universal/idempotency.yaml::create_media_buy_initial::replayed`
assertion: "if reported on fresh execution, must be false". The
replay step's positive assertion is unchanged. Both dispatch modes
remain 52/52 clean.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@bokelley bokelley merged commit 94aa0c5 into main Apr 24, 2026
13 of 14 checks passed
@bokelley bokelley deleted the bokelley/bump-adcp-client-5-16 branch April 24, 2026 15:22
bokelley added a commit that referenced this pull request Apr 24, 2026
…layed assertion (#3074)

Follow-up to #3032 (documented the check) and #3034 (restored the
initial-step replayed assertion). Two small gaps remained, surfaced
while triaging superseded PR #3037:

1. scripts/lint-storyboard-contradictions.cjs — hasPositiveAssertion
   listed the older check kinds but not field_value_or_absent. Any
   storyboard using it as the only positive assertion was misclassified
   as "unspecified." Now classified correctly as "success."

2. static/compliance/source/universal/idempotency.yaml — the
   create_media_buy_fresh_key step is a non-replay call, so the same
   replayed tolerance #3034 restored on create_media_buy_initial applies:
   replayed MAY be omitted, but if present MUST NOT be true. Added the
   symmetric field_value_or_absent [false] assertion so fresh-key coverage
   matches initial-call coverage.

Both additions are purely additive. Agents that omit replayed on fresh
execution pass (spec-correct). Only agents setting replayed: true on a
fresh call fail — already a spec violation per PR #3013.

Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
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