Repository navigation
DRAFT offers without twins, step B: drop the twins where offers are allowed (after step A is verified live) - #84
Merged
Conversation
…Offer drops the <type>_offer twins vc_render.drop_offer_twins removes the preauth credential types and their bootstrapping documents from the base values for such an environment (gdc), so the issuer, the datastore scopes and the verifier carry one entry per type. Other environments keep their twins. DO NOT DEPLOY before an offer minted for the base scope has been redeemed (step A): offers that name a configuration id the issuer no longer publishes are unredeemable. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
DRAFT, not deployed. Step B: remove the twins where offers are allowed. Stacked on #83 (step A); do not deploy before an offer minted for the base scope has been redeemed: an offer that names a configuration id the issuer no longer publishes is unredeemable (the wallet resolves it against
credential_configurations_supported).An environment that sets
issuer.allowPreauthOffer(gdc) now drops the<type>_offertwins:vc_render.drop_offer_twins(called fromsirosid_core/render.pyon the base values) removes the credential types whoseissuance.authProviderispreauthand theirdatastoreImportdocuments. On gdc that gives one entry per type: the issuer'scredential_configurations_supportedsource (common.credential_metadata) 26 -> 14, the datastore scopes 24 -> 12, the verifier's lists 14 (#82), no twin documents imported. Every other environment keeps its twins (its images cannot offer a login-gated scope), so nothing is deleted from the repo;fixtures/vc-bootstrapping/*_offer.jsonstay for them. Twin documents already in gdc's live datastore stay until removed.Tests:
tests/test_verifier_credential_metadata.pynow covers both worlds (default: twins on the issuer, hidden from the verifier; flag on: no twin anywhere, 14 entries, nym_auth flagged, no twin document imported); with the render change reverted the new class fails. Parity clean; CLAUDE.md documents the migration order.🤖 Generated with Claude Code