Mediascope counters check the published V13a profile.
Published V13a image templates and the pinned tcounter.js producer on the exact counter host. Account and section naming advice follows the official guide. URI-delimiter overrides, other versions, locale variants, account assignment and backend acceptance remain outside this partial profile.
What this pack matches
Rules
Codes are stable. A finding in CI, MCP, or the playground lands on the same id.
| Field | Required | What it checks | Rule ids | Source |
|---|---|---|---|---|
account |
recommended | The guide permits lowercase Latin letters, digits and underscore in account names. This checks the physically extracted slot, not account assignment or receiver parsing of injected delimiters. Presence diagnostic severity: warning. Evidence: vendor documented. | vendor.mediascope-counter.param.account.missingvendor.mediascope-counter.param.account.emptyvendor.mediascope-counter.param.account.invalid |
docs |
tmsec |
recommended | The guide defines two nonempty section parts separated by one underscore: lowercase Latin letters and digits on the left; the same plus hyphen on the right. It states that nonconforming sections are not counted. Other path layouts remain unvalidated. Presence diagnostic severity: warning. Evidence: vendor documented. | vendor.mediascope-counter.param.tmsec.missingvendor.mediascope-counter.param.tmsec.emptyvendor.mediascope-counter.param.tmsec.invalid |
docs |
param1 |
optional | The current public producer forwards this optional opaque prefix slot with a truthy override or empty fallback. No format or receiver-wide requiredness is inferred. Presence diagnostic severity: warning. | docs | |
referrer |
optional | The producer escapes stars only for document.referrer, while explicit truthy referrers are forwarded unchanged. Empty and opaque values remain open. Query or fragment delimiters can hide later path slots and leave the request outside this profile. Presence diagnostic severity: warning. | docs | |
random |
optional | The published JavaScript appends Math.round(Math.random()*1E9); Flash examples use a smaller range. The no-script image leaves this suffix empty. This is producer-shape advice, not a receiver quota. Presence diagnostic severity: warning. | vendor.mediascope-counter.param.random.emptyvendor.mediascope-counter.param.random.invalid |
docs |
method |
recommended | Published image templates and the pinned Image.src producer issue GET requests. This warning does not establish a receiver-wide method or body contract. Complete HTTP capture contract. Presence diagnostic severity: warning. | vendor.mediascope-counter.http.method.missingvendor.mediascope-counter.http.method.emptyvendor.mediascope-counter.http.method.invalid |
docs |
Validate a payload
pixellint validate url "$ARTIFACT" --rulepack vendor/mediascope-counter
Try this failing payload in the playground. An example with a validation finding.
https://www.tns-counter.ru/V13a****site_ru/ru/UTF-8/tmsec=/123
cargo install pixellint
·
npm install pixellint