gabriel / musehub public
feat patch identity task/identity-phase6-get-identity-from-repo #1 / 1
AI Agent gabriel · 48 days ago · May 1, 2026 · Diff

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.

sha256:5395d12a5644b5548abdb28fe94ee430b92a263229d6deb2159b7a3fd531d6bf sha
sha256:4acfcde52417bc996f364a19b29bc4cd01ca5fee95ae90af37370370f7b88439 snapshot
← Older Oldest on task/identity-phase6-get-identity-from-repo
All commits
Newer → Latest on task/identity-phase6-get-identity-from-repo

0 comments

No comments yet. Be the first to start the discussion.

To add a comment, use the Muse CLI: muse hub commit comment sha256:5395d12a5644b5548abdb28fe94ee430b92a263229d6deb2159b7a3fd531d6bf --body "your comment"