Keep and read a European Digital Credential (#670) #1182
No reviewers
Labels
No labels
accessibility
authentication
breaking change
bug
documentation
enhancement
interface
internationalisation
observability
performance
security
tier
1
tier
2
tier
3
tier/4
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
Postulo/postulo!1182
Loading…
Reference in a new issue
No description provided.
Delete branch "670-digital-credentials"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Postulo now keeps and reads a European Digital Credential (ELM v3 JSON-LD), in two commits.
Stage 1: keep a credential as the file it is
documents/credentials.pyrecognises a credential by its content: a JAdES envelope ({"payload", "signatures"}) or a bare VC whosetypeholdsVerifiableCredential. Caps: 5 MiB and a depth of 40, and@contextis never followed.jsonandjsonlduploads are accepted only when they hold a credential, and only as a certificate, a diploma or a diploma supplement.DocumentOutgainsseal.documents/0032: the extension list changed.tests/data/edc/README.md.Stage 2: take what it states
plugins/europass/credential.pyreads:LearningAchievementclaim;awardingBody.legalNameand never the sealing issuer;awardingDate, elsevalidFrom, elseissued;eqfLevel.id.Out of scope, per the issue: checking the seal (a separate plugin later), and creating an education entry from a credential.
Tests:
tests/test_credentials.py(41 tests),tests/e2e/test_credentials.py, and the documents, API, plugin-surface, import-layer, migration, translation, template-lint and stylesheet tests: 8,313 passed in the agent's run.Closes #670
🤖 Generated with Claude Code
6c82f1755c7cb50991e0