security(phase-3+4): auth keygen writes no PEM; key_path removed from schema
Add derive_hd_public_info() to keypair.py — derives Ed25519 public info in memory without writing any PEM file. Update run_keygen to call it instead of generate_hd_keypair, remove key_path from identity entries and JSON output, and remove the PEM-existence guard (no file to guard against).
Remove key_path from _KeygenJson and _AgentKeygenJson TypedDicts. The --force flag is now a no-op gate (no PEM to overwrite) but the flag is kept for backward-compat callers.
Tests updated: PEM-checking assertions replaced with no-PEM assertions; new TestKeygenPhase4NoPem (P4-1..P4-5) added and green.
sha256:2bd5f9eda173ac77b4b1532986a2f40bbc30d8f11f9305194a7e9c58e0b98b63
sha
+16
~13
−7
symbols
sha256:6bef385a05697bdb55dac6025c21f55e40c67c0b4d78b3d433f24c728c8461f8
snapshot
+16
symbols added
~13
symbols modified
−7
symbols removed
0
dead code introduced
Semantic Changes
36 symbols
+
test_second_keygen_succeeds_without_force
method
method test_second_keygen_succeeds_without_force L397–406
+
test_P4_1_no_pem_written_after_keygen
method
method test_P4_1_no_pem_written_after_keygen L737–746
+
test_P4_2_identity_entry_has_no_key_path
method
method test_P4_2_identity_entry_has_no_key_path L748–762
+
test_P4_4_resolve_signing_identity_works_after_keygen_and_register
method
method test_P4_4_resolve_signing_identity_works_after_keygen_and_register L778–799
+
test_P4_5_json_output_has_no_key_path
method
method test_P4_5_json_output_has_no_key_path L801–809
0 comments
To add a comment, use the Muse CLI:
muse hub commit comment sha256:2bd5f9eda173ac77b4b1532986a2f40bbc30d8f11f9305194a7e9c58e0b98b63 --body "your comment"
No comments yet. Be the first to start the discussion.