Skip to content

feat(chat): freeze QENC v2 private attachments - #241

Merged
QuickMythril merged 1 commit into
mainfrom
feat/chat-portability-c6-private-attachments
Aug 18, 2026
Merged

feat(chat): freeze QENC v2 private attachments#241
QuickMythril merged 1 commit into
mainfrom
feat/chat-portability-c6-private-attachments

Conversation

@QuickMythril

Copy link
Copy Markdown
Member

Summary

  • introduce strict QENC v2 framing for new private chat attachments while preserving QENC v1 and legacy resource compatibility
  • add the Core reference codec for direct sender/recipient wrapping, QPGC-derived group attachment keys, and encrypted QATT filename/media-type/digest/file payloads
  • commit independently generated language-neutral vectors, negative cases, sender-reopen coverage, and exact complete-envelope 1 MiB limits
  • mark Core roadmap milestone C6 complete and record the corresponding Home desktop/Android implementation requirements

Security and compatibility

  • direct attachments wrap to exactly both distinct CHAT participants in the direct-message profile
  • group attachments bind the positive group id, full QPGC epoch id, and full QPGC key id, and derive a domain-separated content key instead of reusing the message key
  • fixed and mode headers are authenticated; recipient ids are canonical, unique, and bounded; sensitive metadata stays inside the encrypted QATT payload
  • Core continues recognizing historical QENC v1 and legacy prefixes without reinterpreting their bytes
  • the existing QCHAT_ATTACHMENT_PRIVATE 1 MiB service limit counts the complete stored envelope

Verification

  • focused exact-commit Maven gate: 67 tests passed
  • full deterministic Maven suite: 3,175 tests passed, 0 failures, 0 errors, 67 skipped
  • package build passed and produced the shaded Core JAR
  • git diff --check passed

The first full-suite run encountered the pre-existing BlockArchiveTests.testServeArchivedBlocksForGetBlocksRequest synthetic null-mint flake. That exact test passed alone, and the subsequent complete 3,175-test rerun passed cleanly.

Follow-on

Home H6 can consume qenc-attachment-v2.json next to implement native source-token encryption, publish, authorized decrypt/view/save/stream, and immutable Chat descriptors without exposing keys to the app.

@QuickMythril
QuickMythril force-pushed the feat/chat-portability-c6-private-attachments branch from 90139cf to 8f147ff Compare August 18, 2026 23:19
@QuickMythril
QuickMythril merged commit d0da403 into main Aug 18, 2026
9 checks passed
@QuickMythril
QuickMythril deleted the feat/chat-portability-c6-private-attachments branch August 18, 2026 23:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants