Beyond the gate being unmet (filed separately), it's also the wrong gate: grepping test/*.e2e-spec.ts for GITHUB_CLIENT_ID, GITHUB_CLIENT_SECRET, GithubAuthGuard, or any HTTP-mocking library (nock and similar aren't dependencies at all) returns nothing. Every e2e spec (app.e2e-spec.ts, users.e2e-spec.ts, escrow-idempotency.e2e-spec.ts, the three stellar-address-validation-*.e2e-spec.ts files) builds its TestingModule from specific controllers/services with mocked providers and overrideGuard(...)-stubbed auth guards — none of them drive a real passport-github2 OAuth handshake, which is the only thing GITHUB_CLIENT_ID/GITHUB_CLIENT_SECRET are used for (GithubStrategy's constructor). The CI condition should very likely be checking DATABASE_URL reachability (already provided via the postgres service container) rather than GitHub OAuth credentials — as written, it can never actually run the e2e suite in this repository's CI unless someone adds credentials the tests don't need.
Beyond the gate being unmet (filed separately), it's also the wrong gate: grepping
test/*.e2e-spec.tsforGITHUB_CLIENT_ID,GITHUB_CLIENT_SECRET,GithubAuthGuard, or any HTTP-mocking library (nockand similar aren't dependencies at all) returns nothing. Every e2e spec (app.e2e-spec.ts,users.e2e-spec.ts,escrow-idempotency.e2e-spec.ts, the threestellar-address-validation-*.e2e-spec.tsfiles) builds itsTestingModulefrom specific controllers/services with mocked providers andoverrideGuard(...)-stubbed auth guards — none of them drive a realpassport-github2OAuth handshake, which is the only thingGITHUB_CLIENT_ID/GITHUB_CLIENT_SECRETare used for (GithubStrategy's constructor). The CI condition should very likely be checkingDATABASE_URLreachability (already provided via thepostgresservice container) rather than GitHub OAuth credentials — as written, it can never actually run the e2e suite in this repository's CI unless someone adds credentials the tests don't need.