fix(e2e): adapt E2E tests to EdgeAgent seed callback API - #238
Merged
Conversation
patextreme
force-pushed
the
fix/e2e-seed-callback
branch
from
June 17, 2026 15:15
ff2a455 to
1243a88
Compare
The EdgeAgent seed was changed from a Seed value to an async closure (() async throws -> Seed)? in a4cd164 (shipped in 8.1.0), which updated the unit tests but not the E2E tests, breaking the E2E build: DidcommAgentAbility.swift:100: error: cannot convert value of type 'Seed' to expected argument type '(() async throws -> Seed)?' Update the three affected E2E sites to mirror the unit-test pattern: - DidcommAgentAbility: pass { seed } closure to EdgeAgent init - EdgeAgentWorkflow: call try await edgeAgent.seed() (x2) Signed-off-by: Pat Losoponkul <patextreme@hotmail.com>
8.1.1-rc.1 passed { seed } to EdgeAgent's escaping (() async throws -> Seed)?
seed closure, but Swift requires explicit capture semantics for the implicit
self.seed reference:
DidcommAgentAbility.swift:100:21: error: reference to property 'seed' in
closure requires explicit use of 'self' to make capture semantics explicit
Mirror the unit-test pattern (BackupWalletTests in a4cd164): bind a local
'let seed = seed' value copy before the init so the closure captures the
value rather than self (also avoids a retain cycle).
Signed-off-by: Pat Losoponkul <patextreme@hotmail.com>
patextreme
force-pushed
the
fix/e2e-seed-callback
branch
from
June 17, 2026 15:22
1243a88 to
a658565
Compare
|
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.



Problem
feat(agent): init now receives a seed callback(#233, commita4cd164, shipped in8.1.0) changedEdgeAgent.seedfrom aSeedvalue to an async closure, and updated theseed:initializer parameter fromSeed?to(() async throws -> Seed)?:The SDK unit tests (
BackupWalletTests,PrismOnboardingInvitationTests) were updated in that same commit, but the E2E tests were not. As a result thee2etest target no longer compiles against the 8.x SDK:xcodebuild build-for-testingfails (** TEST BUILD FAILED **), so no E2E tests can run. This was surfaced by an integration run against the locally-hosted Identus stack (integration run #27693263471).Solution
Update the three E2E sites that consume the seed to mirror the pattern already used by the unit tests (e.g.
BackupWalletTests):DidcommAgentAbility.swift— pass a() async throws -> Seedclosure toEdgeAgent's initializer. A locallet seed = seedvalue copy is bound before the init so the escaping closure captures the value (notself), which both satisfies Swift's explicit-capture requirement and avoids a retain cycle.EdgeAgentWorkflow.swift— calltry await edgeAgent.seed()instead of readingedgeAgent.seeddirectly (two sites: theprism/jwtcredential-offer path and thecreateBackuppath).No SDK public API or behavior is changed — this is a test-only fix.
Verification
Pointed the integration local-tunnel E2E suite at this branch and ran it to green. Verified suite:
** TEST EXECUTE SUCCEEDED **— 23 tests executed, 0 failures (2 skipped).8.1.1-rc.2on this branch)2.2.0, mediator1.2.1, neoprism0.14.1Alternatives Considered
None. This follows the exact pattern the SDK's own unit tests adopted for the same breaking change, so the E2E tests stay consistent with the rest of the suite.
Checklist