Seedance 2.5输入可达性契约
Use this skill before an authorized Seedance 2.5 request. It checks media-source policy and metadata locally without uploading or calling a model.
Prerequisites
- - Python 3.9 or newer.
- A redacted JSON request with model, mode, and media metadata.
- The operator has separately confirmed rights, consent, privacy, and platform access.
Inputs and outputs
- - Input: request JSON. Each asset has
kind, source, url_token, content_type, size_bytes, duration_seconds, expires_at, and consent_confirmed. - Output:
input_reachability_contract.json and a concise terminal report. - Exit code 0 means the request is ready for human submission review; exit code 1 means blocked.
Execution
CODEBLOCK0
The checker accepts redacted URL tokens only. It rejects local/private/credential-bearing source tokens, missing expiry, unsupported source, and missing consent cases. It applies the Seedance 2.5 limits recorded in the examples, but does not claim that a platform will accept a request.
Recovery
Fix the reported field, rerun the checker, and recheck current provider documentation before submission. Never paste API keys, cookies, signed URLs, customer media, or personal data into the package.
Permission boundary
This is a local preflight. It never reads credentials, resolves a URL, uploads media, starts a task, spends credits, downloads output, or publishes content. A human with the required account and rights must confirm the real URL, expiry, policy, and cost.
Acceptance
The pass example exits 0 and produces a contract with
release_ready=false; the blocked example exits nonzero and lists each violated rule.