chore: merge poulpy-js repo into squid monorepo#27
Conversation
|
Caution Review failedThe pull request is closed. ℹ️ Recent review info⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Plus Run ID: ⛔ Files ignored due to path filters (3)
📒 Files selected for processing (76)
📝 WalkthroughWalkthroughThis PR restructures the project from a single Rust crate into a monorepo with a Cargo workspace (crates/squid, crates/squid-wasm, crates/squid-napi) and a pnpm workspace. It adds WebAssembly and Node.js N-API bindings, a comprehensive Next.js demo application with FHE encryption workflow UI, and E2E testing infrastructure with Playwright. Changes
Sequence DiagramsequenceDiagram
participant Browser as Browser (Demo UI)
participant Worker as Web Worker (WASM)
participant NextAPI as Next.js API
participant Server as Node Server (N-API)
Browser->>Browser: Step 1: Initialize
Browser->>Worker: Create Session (keygen)
Worker->>Worker: Generate SK/EK from seeds
Worker-->>Browser: Return EK bytes
Browser->>Browser: Display SK preview
Browser->>Browser: Step 2: Select inputs (a, b)
Browser->>Worker: Encrypt a, b
Worker->>Worker: Encrypt with SK
Worker-->>Browser: Return ctA, ctB
Browser->>Browser: Display ciphertexts
Browser->>Browser: Step 3: Send for evaluation
Browser->>NextAPI: POST /api/add (ctA, ctB)
NextAPI->>Server: Load Evaluator with EK
Server->>Server: Perform homomorphic addition
Server-->>NextAPI: Return ctSum
NextAPI-->>Browser: Return ctSum
Browser->>Browser: Display result ciphertext
Browser->>Browser: Step 4: Decrypt
Browser->>Worker: Decrypt ctSum
Worker->>Worker: Decrypt with SK
Worker-->>Browser: Return plaintext result
Browser->>Browser: Display result (a+b)
Estimated code review effort🎯 4 (Complex) | ⏱️ ~50 minutes Possibly related PRs
Poem
✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Comment |
Summary by CodeRabbit
New Features
Documentation
Chores