feat(identity): Phase 6 — GET /api/identities/{handle} reads from identity repo HEAD
- Add _read_identity_record_from_repo() in identities.py Reads identity repo HEAD manifest → identities/{handle}.json → parses IdentityRecord. Returns None when no identity repo exists (migration-period fallback). - Update _row_to_dict() to accept optional repo_record pubkey, quorum: sourced from identity repo (canonical truth) identity_type: sourced from identity repo type field display_name: repo metadata.display_name takes precedence over DB bio, avatar_url and all other profile fields: still from DB (enrichment) - Update get_identity() to call _read_identity_record_from_repo() and pass result - Add 11-test TDD suite: test_identity_repo_phase6.py pubkey from repo, key-rotation reflected immediately, org quorum field, display_name from metadata, bio+avatar_url from DB alongside repo data, DB fallback (pubkey=null, quorum=null), 404 for unknown handle
Phase 6/6 of identity-plugin wiring (issue #19 / staging #2). Cumulative: 66 tests GREEN.
0 comments
muse hub commit comment sha256:5395d12a5644b5548abdb28fe94ee430b92a263229d6deb2159b7a3fd531d6bf --body "your comment"
No comments yet. Be the first to start the discussion.