CommunityProgramación y desarrollogithub.com

kitty4D/encrypt-solana-prealpha-skill

Use when integrating Encrypt on Solana pre-alpha: #[encrypt_fn] / DSL (EUint, EVector, EBitVector, PUint), EncryptService (CreateInput, ReadCiphertext), devnet + CPI SDKs, @encrypt.xyz/pre-alpha-solana-client—or fees (ENC/SOL), EncryptDeposit, account/event/fee layouts, graph...

Compatible con~Claude Code~Codex CLI~Cursor
npx add-skill kitty4D/encrypt-solana-prealpha-skill

name: encrypt-solana-prealpha description: "Use when integrating Encrypt on Solana pre-alpha: #[encrypt_fn] / DSL (EUint, EVector, EBitVector, PUint), EncryptService (CreateInput, ReadCiphertext), devnet + CPI SDKs, @encrypt.xyz/pre-alpha-solana-client—or fees (ENC/SOL), EncryptDeposit, account/event/fee layouts, graph IR, access control, decryption, mock vs real FHE, tutorials/examples—or byte-level Encrypt reference lookups—or Encrypt vs ika dWallet signing."

encrypt solana pre-alpha

Normative: Encrypt Developer Guide · mdbook in encrypt-pre-alpha docs/. Load references/ for gRPC, ix, flows.

Docs revision: references/docs-revision.md — if docs/ on main is past the tracked commit, tell the user the skill may be stale; do not silently rewrite skill files.

pre-alpha disclaimer

  • Exploration only — not production confidentiality.
  • No real encryption guarantee — data can be plaintext on-chain; do not submit sensitive or real data.
  • Keys / trust model not final; devnet resets; no warranty. Do not market as production FHE or private custody to end users.

references (load on demand)

fileload for
references/developer-guide-map.mdBook TOC + URLs — load before guessing
references/book-snapshots.mdLists all book-copy md under references/
references/fee-and-state-reference.mdENC/SOL fees, seven account kinds, five event types
references/docs-revision.mddocs/ vs main
references/grpc-api.mdEncryptService, proto, clients
references/instructions.mdDiscriminators, ix groups
references/frameworks.mdCrates, EncryptCpi, toolchain
references/flows.mdLifecycle, tests, CPI vs signer
references/dsl-types.mdEUint* / EVector* / EBitVector* / PUint* tables
references/gotchas.mdField-tested bugs, silent failures, BPF limits, CPI layout
references/performance-caveats.mdTiming, REFHE vs TFHE, bootstrap cost unknowns

install & tooling

TS: @encrypt.xyz/pre-alpha-solana-client + createEncryptClientgrpc-api.md. Rust 2024, Solana CLI 3.x (build-sbf), Bun, just test-unit / test-examplesframeworks.md, flows.md. Pin git crates per upstream Cargo.toml.

environment (pre-alpha)

resourcevalue
Encrypt gRPC (TLS)https://pre-alpha-dev-1.encrypt.ika-network.net:443
Solana RPChttps://api.devnet.solana.com (typical)
Encrypt program id4ebfzWdKnrnGseuQpezXdG8yCdHqwQ1SSBHD3bWArND8
source repohttps://github.com/dwallet-labs/encrypt-pre-alpha

Canonical: program id, gRPC URL, Solana RPC, git remote — hub only; align samples.

quick pointers

On-chain: first ix byte = discriminator; 22 user ix + emit_event 228instructions.md. Common path: discs 1–4 (create_input_ciphertextexecute_graph); full metas: instruction reference.

gRPC: encrypt.v1.EncryptServiceCreateInput, ReadCiphertextgrpc-api.md.

Model: #[encrypt_fn] (scalars) or #[encrypt_fn_graph] (scalars + vectors) → graph → on-chain execute_graph / ciphertext accounts → executor + commit_ciphertext; decrypt via gateway ix — flows.md, introduction. Field-tested gotchas (executor bugs, silent failures, BPF limits, CPI layout): gotchas.md. Performance (REFHE vs TFHE, timing caveats): performance-caveats.md. Book-only (DSL incl. EVector* / EBitVector*, tutorial, PC-token/swap, fees, schemas): developer-guide-map.md, book-snapshots.md, fee-and-state-reference.md.

common mistakes

mistakeinstead
Assuming pre-alpha ciphertexts are secretTreat as public / plaintext-capable (book + repo).
Using #[encrypt_fn] with vector typesVectors lack HasFheTypeId — use #[encrypt_fn_graph] from encrypt-dsl and invoke CPI manually. See gotchas.md.
Treating devnet commit times as FHE benchmarksPre-alpha runs no real FHE — all timings are mock overhead. See performance-caveats.md.
Wrong CreateInput authorized / network_encryption_public_keyMatch NetworkEncryptionKey + access rules — grpc-api.md.
Encrypt vs ika dWalletika signing / approve_messageika-solana-prealpha skill, not this one.
Patching skill when upstream docs/ changedNotify userdocs-revision.md.
Forgetting Encrypt fees / deposits / eventsNot ika-shaped — fee-and-state-reference.md + book-snapshots.md.

Examples: encrypt-pre-alpha chains/solana/examples.

Skills relacionados