Adludo pilot compatibility reference
Development pilot documentation. Reviewed 5 November 2026 against SDK source commit aaa14c6a75d5978ee5d6809c783da9c3b814198e. Runtime release commit: eb5d488cd2cf64f7f90a5e5971352129deb4fff1. Producer limits below are separate from the inspected pilot receiver at commit c721c37eb83b011678b174edfb11221c32c9ac19. The smaller SDK subset passed local receiver tests on 5 November 2026. This is not a live deployment check.
| Property | Common contract | Pilot indexed contract |
|---|
| Identifier | adludo-native-upload-v1 | adludo-native-upload-pilot-v1 |
| Adapter selection | Non-pilot receiver path; receiver support still required | Explicit approved pilot receiver path |
| Evidence items | At most 1,024 | At most 8,192 |
| Selected artifacts | At most 1,027 | At most 8,196 |
| Evidence records | At most 100,000 | At most 500,000 |
| Aggregate evidence | At most 16 MiB | At most 64 MiB |
| Total source archive | At most 64 MiB | At most 64 MiB |
| Finalization | Inline artifact selection | Generated index when selection exceeds 1,027 artifacts or inline finalization exceeds 200,000 bytes |
All limits apply together. In the common contract, run, manifest and report consume three artifact slots; optional engagement consumes another. Thus 1,024 evidence items cannot coexist with engagement under the 1,027-artifact cap. In the indexed contract, the 64 MiB total archive cap also includes non-evidence files.
Both contracts use envelope schema 1, chunks up to 65,536 decoded bytes and individual serialized envelopes up to 262,144 bytes. Source archives containing an existing archive index are rejected; the pilot path generates its transport index during staging. This does not authorize uploading arbitrary indexed or shape archives.
The game adapter enables bundling and gzip. Queue contents and receipt hashes refer to the original individual envelopes, not the compressed HTTP body. Selecting a saved compressed recording for recovery is a separate operation: it validates that copy against the existing queue without rebuilding a missing queue or changing pending bytes.
SDK package version 0.4.0-preview.2, Unity declaration 6000.0, compilation against 6000.6.4f1, and Android app build 43 (0.33.0-compressed-recovery) identify different compatibility dimensions. Phone recovery qualification covers Samsung SM-N975F, Android 12 only. See E03, E05 and E06.
Receiver admission and effective limits
| Property | Current pilot SDK sender | Inspected pilot receiver | Effective bound for this sender |
|---|
| Total archive bytes | 64 MiB | 128 MiB | 64 MiB |
| Aggregate evidence bytes | 64 MiB | 128 MiB | Below 64 MiB once other archive files are included |
| Evidence items | 8,192 | 8,192 | 8,192 subject to all other caps |
| Selected artifacts | 8,196 | 8,196 through index | 8,196 subject to all other caps |
| Records | 500,000 | 500,000 | 500,000 subject to byte limits |
| Inline selection | Switches to index above 1,027 artifacts or 200,000 serialized bytes | Up to 1,028 inline entries, within 262,144-byte envelope | Sender switches earlier |
Receiver capability metadata does not authorize a larger SDK archive. Receiver staging also has a 128 MiB per-delivery chunk-storage limit and shared storage quotas; these can reject work before final archive limits are reached. Both encoded and decoded gzip input are bounded to 262,144 bytes. Bundles contain 2–16 artifact-chunk messages, at most 190,000 total original-envelope bytes, and one binding. Finalize messages cannot be nested in bundles. Partial storage retains individual receipt identities for safe retries.
The 29 focused checks include actual retained SDK overlay/depth fixtures, canonical replay, retry identity, malformed indexes, gzip bounds, bundles and gateway forwarding. Those retained fixtures were generated by SDK commit 30532e3147f0b43b1d4baf564757b2f3377839ef (preview.1); passing them establishes backward compatibility, not fresh generation from build 43 or exhaustive testing of every maximum boundary. Build 43 phone evidence remains separately scoped in E01. Verification summary
Distributed package identity
The inspected later SDK source is not identical to the retained preview.2 tarball, despite the same package version label. The tarball lacks the indexed archive contract and compressed-copy recovery API. Its installation guide pins the checksum and explains that distinction. Do not apply the pilot-sender column to the retained tarball.