Adludo documentation · Development pilot

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.

PropertyCommon contractPilot indexed contract
Identifieradludo-native-upload-v1adludo-native-upload-pilot-v1
Adapter selectionNon-pilot receiver path; receiver support still requiredExplicit approved pilot receiver path
Evidence itemsAt most 1,024At most 8,192
Selected artifactsAt most 1,027At most 8,196
Evidence recordsAt most 100,000At most 500,000
Aggregate evidenceAt most 16 MiBAt most 64 MiB
Total source archiveAt most 64 MiBAt most 64 MiB
FinalizationInline artifact selectionGenerated 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

PropertyCurrent pilot SDK senderInspected pilot receiverEffective bound for this sender
Total archive bytes64 MiB128 MiB64 MiB
Aggregate evidence bytes64 MiB128 MiBBelow 64 MiB once other archive files are included
Evidence items8,1928,1928,192 subject to all other caps
Selected artifacts8,1968,196 through index8,196 subject to all other caps
Records500,000500,000500,000 subject to byte limits
Inline selectionSwitches to index above 1,027 artifacts or 200,000 serialized bytesUp to 1,028 inline entries, within 262,144-byte envelopeSender 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.