diff --git a/CHECKPOINT-encryption.md b/CHECKPOINT-encryption.md index e138d77..3d300ef 100644 --- a/CHECKPOINT-encryption.md +++ b/CHECKPOINT-encryption.md @@ -2,13 +2,17 @@ ## Where things are - Project: `/home/avi/Projects/Keynctr` -- Git repo: `master` @ `0207636` ("feat: expose profile import over IPC"). +- Git repo: `master` @ `3083a44` ("chore: fix two clippy warnings"). - Working tree: clean except four untracked items (`.directory`, `.opencode/`, `COSMIC_THEME.md`, `KeynectrAppIconPossibility02.jpeg`) — none are part of this feature and none have been committed. ## What was completed -1. **Profile import is now usable from the GUI.** The `profiles::import_profile` +1. **Clippy is now warning-free.** Removed the two pre-existing warnings: the + no-op `drop(stored)` of a `&mut` reference in `src/profiles.rs` and the unused + `restored` binding around `app.undo_delete()` in the `UndoDelete` handler in + `src/ipc.rs`. No behaviour change — both were dead code. +2. **Profile import is now usable from the GUI.** The `profiles::import_profile` function (already in the Rust core from the account-import work) is now exposed through the JSON-lines IPC protocol: new `ImportProfile` request and handler in `src/ipc.rs`, `import_profile` added to the Electron method allowlist, @@ -16,17 +20,18 @@ "Add existing account" buttons on the Profiles screen (empty and populated states). The existing `ImportProfileModal` (enter only the private key; the name and kind-0 metadata are derived from the network) is now wired to it. -2. **Active signing identity card on Home.** The Home screen shows a card with the +3. **Active signing identity card on Home.** The Home screen shows a card with the active profile's avatar, name, shortened npub, and a "Switch profile" button. -3. **HomeScreen test fixes.** The identity card duplicates the active profile's name +4. **HomeScreen test fixes.** The identity card duplicates the active profile's name and npub on the page, so the two affected tests now scope their queries to the identity card (via the "Active signing identity" heading) and to the profile list, instead of querying the whole screen. -4. **Prettier** applied to `ImportProfileModal.tsx`, `ProfilesScreen.tsx`, +5. **Prettier** applied to `ImportProfileModal.tsx`, `ProfilesScreen.tsx`, `AppProvider.tsx` (and the test file), clearing the three existing `format:check` warnings — `npm run format:check` is now fully clean. ## Commits added in this session (newest first) +- `3083a44` chore: fix two clippy warnings - `0207636` feat: expose profile import over IPC - `2604cf9` checkpoint: document release packages @@ -34,8 +39,7 @@ All green in this session, run after the changes: - Rust: `cargo fmt --check` clean; `cargo test` — 116 passed; - `cargo clippy --all-targets` — only the 2 pre-existing warnings (`std::mem::drop` - on a reference, unused variable `restored`); `cargo build --release` — success. + `cargo clippy --all-targets` — clean, zero warnings; `cargo build --release` — success. - Frontend: `npm test` — 15 files / 99 passed (the 2 previously failing HomeScreen tests now pass); `npm run typecheck` clean; `npm run lint` clean (only the harmless ES-module reparsing warning); `npm run format:check` — all files clean; @@ -73,7 +77,5 @@ All green in this session, run after the changes: them in this session. - Installer artifacts are local build outputs under `frontend/release/` and are not committed. -- Two pre-existing clippy warnings remain in `src/ipc.rs` / `src/profiles.rs` - (drop of a reference, unused `restored`) — trivial to clean up. - README is stale (title, dependency versions, test counts, Forgejo references) — worth a docs pass before 0.2.