Skip to content

stack-encrypt refactor: extend owned target conversions to collections #1482

Open

Description

@coderdan

#1470/#1404 establishes owned scalar conversion. Collections still need the same owned target model without sacrificing batching or cleanup.

Acceptance:

  • Support consuming Vec to Vec through EncryptInto/DecryptFrom and EncryptTarget/DecryptSource, including Vec to Vec without caller context.
  • Preserve one logical batch, per-value authentication boundaries, ordering, empty collections and provider chunk limits.
  • Propagate explicit context-input capabilities; do not infer optionality from Default.
  • Guard owned plaintext through construction failure, partial execution and cancellation; avoid an unnecessary Clone bound.
  • Keep direct keyset.encrypt restricted to one opaque value and keep structural encrypt_tree explicit.
  • Resolve byte-element/nullable capability constraints with Vitamin C explicitly; do not silently treat Vec as a single opaque ciphertext.
  • Add executable public examples, compile-fail capability tests and conformance coverage.

Build on #1470 and #1475; whole-value collection storage belongs to the separate blob task.

Plan: conformance roadmap and API redesign #1365.

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions