Repository navigation
Conversation
… readable object Squashes the first half of the 0.7.1 follow-up (#42, #48, #49) into one slice. A creator uploads a file through the Library transport and protects and lists it in one flow, through the Creator app. The source mime decides the kind: video and audio take the rendition path, everything else is an object and takes the chunked-payload path, and the kind then decides the viewer, so the creator never picks one. Non-media objects work end to end, and Elacity Reader renders pictures, documents, text, 3D models, books and comics. Audio becomes a first-class rendition rather than a video with the picture missing: media-provider probes the source, keeps exactly one track, and skips cover art rather than taking it for a video track. Protected media carries a CENC Protection System Specific Header declaring the Elacity post-quantum hybrid-threshold scheme, written, parsed and admitted by one module so the producer, the read path and the layout validator cannot drift apart. The crypto-review package documents every primitive with its crate version and parameters, what each construction binds, and a threat model naming the test that pins each claim. Original commits: 9404e8d, afabc11, d10b199, 0617957, ca7fa26, 2596100, 9709934.
This was referenced Oct 2, 2026
irzhywau
added this pull request to stack #207
October 2, 2026 10:34
Contributor
Author
|
The local run on this branch alone was stopped to save disk space, so GitHub CI is the check for this branch on its own. The full stack (top of #206) passes every check locally. |
This was referenced Oct 7, 2026
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.
What this does
A creator protects any file and lists it in one flow from the new Creator app. The source type decides the path:
The kind then decides the viewer. The new Elacity Reader renders protected pictures, documents, text, 3D models, books and comics.
docs/PROTECTED_CONTENT_CRYPTO_REVIEW.mddocuments every primitive, what each construction binds, and a threat model with the test that pins each claim.Reviewing
About 62k of the lines are three.js and pdf.js, vendored under
capsules/elacity-reader/browser/vendor/for the Reader. Check their versions and licenses there rather than reading them. Tests are about 7k lines.Stack
Second of four, based on #203:
Supersedes the first half of #62. Closes #49. Part of #42 (custody/operator UX is not complete). Part of #48; external review stays open.
Verification
The whole stack (top of PR 4) passes locally:
cargo fmt --checkand workspace clippy with-D warningsjust test-elastosandjust test-capsules(21 capsules)source-gatescript and the capsule browser testsjust product-ui-sourceThe same checks are running on this branch alone; I'll post the result as a comment. GitHub CI is the arbiter.