Skip to content

Persist VC issuance and verification history - #84

Closed
MYRhouma wants to merge 68 commits into
mainfrom
yassine-refactor
Closed

Persist VC issuance and verification history#84
MYRhouma wants to merge 68 commits into
mainfrom
yassine-refactor

Conversation

@MYRhouma

Copy link
Copy Markdown
Contributor

What changed

The VC manager now keeps a PostgreSQL audit trail for the credential lifecycle.

  • Store every issued credential, including the compact JWS and original issuance request.
  • Store every verification request together with the response returned by the manager.
  • Keep failed and malformed verification attempts in the audit log as well.
  • Add admin endpoints to inspect issued credentials and verification history.
  • Create the required tables automatically when the service starts with DVA_VC_MANAGER_DB_URL configured.

Checks

  • uv run pytest (38 passed)
  • uv run ruff check .
  • Tested the audit repository and FastAPI flow against a real PostgreSQL 17 container.

Notes

The service still uses in-memory stores when no database URL is configured, which keeps local development and the existing tests working. Deployed environments should set DVA_VC_MANAGER_DB_URL.

MYRhouma and others added 28 commits July 29, 2026 22:27
Expose provider- and consumer-side processing on ports 5007 and 5008
respectively.
BREAKING CHANGE: removes ACA-Py entirely in an effort to switch VC
standards and the entire credential handling system
@MYRhouma
MYRhouma requested a review from bzp99 August 10, 2026 17:45
@MYRhouma
MYRhouma marked this pull request as ready for review August 10, 2026 17:47
Copilot AI lite review requested due to automatic review settings September 12, 2026 13:33

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot was unable to review this pull request because the user who requested the review is ineligible. To be eligible to request a review, you need a paid Copilot license, or your organization must enable Copilot code review.

def render_template(implementation_template: str, model: dict[str, Any]) -> str:
"""Render a Handlebars ``{{var}}`` template string with a model dict."""
try:
return chevron.render(implementation_template, model)
@bzp99

bzp99 commented Sep 12, 2026

Copy link
Copy Markdown
Collaborator

This looks wrong (PR from your yassine-refactor branch to main)

@bzp99 bzp99 closed this Sep 12, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants