docs(trusted-match): close two narrative-vs-schema drifts in TMP spec#5663
Merged
ohalushchak-exadel merged 1 commit intoJun 23, 2026
Merged
Conversation
- ContextMatchRequest property_type prose enum: add linear_tv, which
has been a valid value in the property-type enum schema (with the
description "Linear television stations and networks…") but was
missing from the inline list at the field table. Readers relying on
the prose would not know linear_tv is acceptable.
- ContextMatchResponse field table: add a row for cache_ttl. The field
is already normatively defined in the Caching section ("Providers MAY
include a cache_ttl field… Routers MUST respect this value when
present") and emitted by the reference implementation, but the
response field table did not list it. The new row documents the
override semantics, the 0-disables-caching convention, the
schema-enforced 86400s ceiling, and links to the Caching section for
the full TTL rules.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
|
Preview deployment for your docs. Learn more about Mintlify Previews.
💡 Tip: Enable Workflows to automatically generate PRs for you. |
Contributor
There was a problem hiding this comment.
Clean drift-closure. The field tables now agree with the schema source they were silently contradicting — prose tables are load-bearing, and a reader who trusts them shouldn't be misled about the wire shape.
Things I checked
property_type:static/schemas/source/enums/property-type.json:9listslinear_tvbetweenradioandstreaming_audio. The new prose inserts it in the exact same position. Match.cache_ttl:static/schemas/source/tmp/context-match-response.jsondeclaresinteger,minimum: 0,maximum: 86400, "router MUST use this value instead of its default," "Set to 0 to disable caching." The new row's three claims — MUST-use,0disables, 86400 ceiling — track the schema verbatim.- Schema property order (
offers→cache_ttl→signals) matches the new table row order. Right shape. - Body/table coherence: the Caching section (
specification.mdx:735-738) already carried the MUST/0-disables/86400 rules normatively. The table now agrees with the body it previously contradicted, and the new row links back to#caching(anchor exists at L730). - No schema source touched, no wire change, purely additive prose. No changeset required —
docs/trusted-match/**is outside thedocs/reference/**changeset gate. - Markdown integrity: both edits are 4-column rows matching the header; no unescaped pipes in the new descriptions.
Minor nits (non-blocking)
- Default TTL value omitted from the new row. The schema description names a "default 5-minute cache TTL"; the new
cache_ttlrow says "router's default" without the number. Not drift — the override semantics are correct and the concrete default belongs in the Caching section — but a reader sizing0against the default has to scroll. Worth a half-sentence if you touch this again.
Test plan
- The one unchecked box — "Spec preview renders the two updated tables correctly" — is the cosmetic render of a two-row table addition. Markdown is well-formed (verified column counts), so this is non-blocking. Confirm on preview before merge.
LGTM.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Two narrative-vs-schema drifts in `docs/trusted-match/specification.mdx` where the prose field tables silently disagreed with the schema source of truth.
`property_type` enum prose missed `linear_tv`
`static/schemas/source/enums/property-type.json` lists `linear_tv` as a valid property type (with the description "Linear television stations and networks, identified by station ID or facility ID"), and the reference TMP implementation has had `PropertyTypeLinearTV` since the 3.1 schema bundle. The inline enum list on the ContextMatchRequest field table did not include it, so a reader relying on the prose would not know `linear_tv` was acceptable.
`cache_ttl` missing from ContextMatchResponse field table
The Caching section already says normatively:
…and the field appears in the response schema and the reference implementation, but the ContextMatchResponse field table at lines 131–136 did not list it. Anyone reading the response shape from the table would conclude there was no override mechanism. New row documents the override semantics, the `0`-disables-caching convention, the schema-enforced 86400s ceiling, and links to the Caching section for the full TTL rules.
Surfaced by an audit comparing the spec against the AdCP 3.1 schema bundle and the reference TMP implementation. Companion to the recently merged `seller_agent_url` signing fix (#5660).
Test plan
🤖 Generated with Claude Code