From 3e785539bed36fc432ac3da4dc9a408dc1a8db50 Mon Sep 17 00:00:00 2001 From: Alberto L Date: Sat, 4 Jul 2026 00:00:23 -0600 Subject: [PATCH] feat: enable Pickup V2 batch pickup via env flag Replace hardcoded BC Gov mediator URL check with MEDIATOR_USE_V2_BATCH_PICKUP. When true, agent startup initiates Pickup V2 live mode and batch pickup for Credo-TS mediators. Refs berkmancenter/keyring-wallet#4 Signed-off-by: Alberto L --- app/.env.sample | 2 ++ app/src/hooks/useBCAgentSetup.ts | 11 +++++------ 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/app/.env.sample b/app/.env.sample index 25f7ba0..1b6dcaf 100644 --- a/app/.env.sample +++ b/app/.env.sample @@ -1,6 +1,8 @@ # OCA_URL sourced from upstream bcgov/aries-oca-bundles repository OCA_URL=https://raw.githubusercontent.com/bcgov/aries-oca-bundles/main/ MEDIATOR_URL=https://f326-207-194-65-204.ngrok.io?c_i=eyJAdHlwZSI6ICJodHRwczovL2RpZGNvbW0ub3JnL2Nvbm5lY3Rpb25zLzEuMC9pbnZpdGF0aW9uIiwgIkBpZCI6ICI2MjQ0ZThiNS0wNWYzLTRhYWItYjM1Yy1lYWVlMWNmZTAyM2MiLCAicmVjaXBpZW50S2V5cyI6IFsiQ3lqM1BHRUJzQ3RyUGFtTTQyRngza3BlYmR2QWdNd1lGejlFS3RmNnlUN3giXSwgImxhYmVsIjogIk1lZGlhdG9yIiwgInNlcnZpY2VFbmRwb2ludCI6ICJodHRwczovL2YzMjYtMjA3LTE5NC02NS0yMDQubmdyb2suaW8ifQ== +# Enable Pickup V2 live mode + batch pickup (required for Credo-TS mediators) +MEDIATOR_USE_V2_BATCH_PICKUP=false MEDIATOR_USE_PUSH_NOTIFICATIONS=false LOAD_STORYBOOK=false PROOF_TEMPLATE_URL= diff --git a/app/src/hooks/useBCAgentSetup.ts b/app/src/hooks/useBCAgentSetup.ts index 5971739..ee15300 100644 --- a/app/src/hooks/useBCAgentSetup.ts +++ b/app/src/hooks/useBCAgentSetup.ts @@ -34,10 +34,9 @@ const loadCachedLedgers = async (): Promise => } } -const checkMediatorType = async (agent: Agent, mediatorUrl: string): Promise => { - if (mediatorUrl.startsWith('https://mediator-credo-dev.apps.silver.devops.gov.bc.ca/')) { +const configureMessagePickup = async (agent: Agent): Promise => { + if (Config.MEDIATOR_USE_V2_BATCH_PICKUP === 'true') { await agent.mediationRecipient.initiateMessagePickup(undefined, MediatorPickupStrategy.PickUpV2LiveMode) - } else { batchPickup(agent) } } @@ -198,7 +197,7 @@ const useBCAgentSetup = () => { const restartedAgent = await restartExistingAgent(agentInstanceRef.current, walletSecret) if (restartedAgent) { logger.info('Successfully restarted existing agent...') - await checkMediatorType(restartedAgent, mediatorUrl) + await configureMessagePickup(restartedAgent) periodicPickupCleanupRef.current?.() periodicPickupCleanupRef.current = startPeriodicTrustPing(restartedAgent, PERIODIC_PICKUP_INTERVAL_MS) refreshAttestationMonitor(restartedAgent) @@ -221,8 +220,8 @@ const useBCAgentSetup = () => { logger.info('Initializing agent...') await newAgent.initialize() - logger.info(`checking mediator type for ${mediatorUrl}`) - await checkMediatorType(newAgent, mediatorUrl) + logger.info(`configuring message pickup for ${mediatorUrl}`) + await configureMessagePickup(newAgent) periodicPickupCleanupRef.current?.() periodicPickupCleanupRef.current = startPeriodicTrustPing(newAgent, PERIODIC_PICKUP_INTERVAL_MS)