apiVersion: jenkins.io/v1 kind: PipelineActivity metadata: annotations: lighthouse.jenkins-x.io/cloneURI: https://github.com/greencapitaltrade/thor.git lighthouse.jenkins-x.io/job: release pipeline.jenkins-x.io/traceID: 640a5f55878369e38a1604aaf6c9a905 creationTimestamp: "2026-08-05T14:09:46Z" generation: 8 labels: branch: main build: "45" context: release created-by-lighthouse: "true" event-GUID: 4dadc1c4-90d7-11f1-9d0c-39e91dc9fbfc lighthouse.jenkins-x.io/baseSHA: 336071acf188ffcf5e1a8644f401057884b09cbc lighthouse.jenkins-x.io/branch: main lighthouse.jenkins-x.io/buildNum: "1785938986120" lighthouse.jenkins-x.io/context: release lighthouse.jenkins-x.io/id: encapitaltrade-thor-main-release-7npgb lighthouse.jenkins-x.io/job: release lighthouse.jenkins-x.io/lastCommitSHA: 336071acf188ffcf5e1a8644f401057884b09cbc lighthouse.jenkins-x.io/refs.org: greencapitaltrade lighthouse.jenkins-x.io/refs.repo: thor lighthouse.jenkins-x.io/type: postsubmit owner: greencapitaltrade podName: encapitaltrade-thor-main-release-xql22-from-build-pack-pod provider: github repository: thor tekton.dev/pipeline: encapitaltrade-thor-main-release managedFields: - apiVersion: jenkins.io/v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:labels: f:branch: {} f:context: {} f:owner: {} f:provider: {} f:repository: {} f:spec: f:lastCommitMessage: {} f:lastCommitSHA: {} f:releaseNotesURL: {} f:version: {} manager: jx-changelog-0.10.29 operation: Update time: "2026-08-05T14:13:27Z" - apiVersion: jenkins.io/v1 fieldsType: FieldsV1 fieldsV1: f:spec: f:completedTimestamp: {} f:status: {} manager: jx-promote-0.6.45 operation: Update time: "2026-08-05T14:14:51Z" - apiVersion: jenkins.io/v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:annotations: .: {} f:lighthouse.jenkins-x.io/cloneURI: {} f:lighthouse.jenkins-x.io/job: {} f:pipeline.jenkins-x.io/traceID: {} f:labels: .: {} f:build: {} f:created-by-lighthouse: {} f:event-GUID: {} f:lighthouse.jenkins-x.io/baseSHA: {} f:lighthouse.jenkins-x.io/branch: {} f:lighthouse.jenkins-x.io/buildNum: {} f:lighthouse.jenkins-x.io/context: {} f:lighthouse.jenkins-x.io/id: {} f:lighthouse.jenkins-x.io/job: {} f:lighthouse.jenkins-x.io/lastCommitSHA: {} f:lighthouse.jenkins-x.io/refs.org: {} f:lighthouse.jenkins-x.io/refs.repo: {} f:lighthouse.jenkins-x.io/type: {} f:podName: {} f:tekton.dev/pipeline: {} f:spec: .: {} f:baseSHA: {} f:batchPipelineActivity: {} f:build: {} f:buildLogsUrl: {} f:context: {} f:gitBranch: {} f:gitOwner: {} f:gitRepository: {} f:gitUrl: {} f:message: {} f:pipeline: {} f:startedTimestamp: {} f:steps: {} manager: jx-build-controller operation: Update time: "2026-08-05T14:16:25Z" name: greencapitaltrade-thor-main-45 namespace: jx resourceVersion: "245036136" uid: b9a15dbf-7d9e-47e8-9672-a6f95bad8eec spec: baseSHA: 336071acf188ffcf5e1a8644f401057884b09cbc batchPipelineActivity: {} build: "45" buildLogsUrl: s3://logs-gct-prod-20260425045301534100000007/jenkins-x/logs/greencapitaltrade/thor/main/45.log completedTimestamp: "2026-08-05T14:14:21Z" context: release gitBranch: main gitOwner: greencapitaltrade gitRepository: thor gitUrl: https://github.com/greencapitaltrade/thor.git lastCommitMessage: | test: serve heimdallr and destiny from in-process fakes The e2e suite has talked to the real Heimdallr and Destiny containers since 80c7624a. That works in the devcontainer but not in CI, which runs `npm run e2e` inside the preview namespace pod. A preview deploys this service plus its own postgres, redis and kafka only, so neither dependency resolves there and every test that minted a token failed. The job has been red since June, and the resulting coverage collapse looked like missing tests rather than a missing environment. Adds tests/fake-services.js, nock interceptors that reproduce the two contracts the suite depends on: - Heimdallr POST /v1/generate mints a structurally valid JWT carrying the request claims, honours expiry_seconds (default 86400), and answers 200 without a token when the device exceeds the 100 character column limit, which is how the suite provokes token_not_generated. - Destiny creates and reads back applications, answers 404 for /v1/applications/:id/active, and 404 for any other path so callers see a service response rather than a connection error. session.test.js and user.test.js called nock.cleanAll() from beforeEach, left over from when each test installed its own Heimdallr interceptor. That now removes the fakes, so both use resetFakeServices(), which clears leftover interceptors and puts the fakes back. Verified with the heimdallr and destiny containers stopped, matching CI: 199 passed, statements 99.16, branches 93.69, functions 100, lines 99.27. The devcontainer still runs both services for manual work against the app. Co-Authored-By: Claude Opus 5 (1M context) lastCommitSHA: 5cb037f12422f53ae8bf1c4a701e6af7c87dcda5 message: 'Tasks Completed: 1 (Failed: 0, Cancelled 0), Skipped: 0' pipeline: greencapitaltrade/thor/main releaseNotesURL: https://github.com/greencapitaltrade/thor/releases/tag/v3.7.38 startedTimestamp: "2026-08-05T14:09:46Z" status: Succeeded steps: - kind: Stage stage: completedTimestamp: "2026-08-05T14:14:21Z" name: Release startedTimestamp: "2026-08-05T14:13:21Z" status: Succeeded - kind: Promote promote: environment: staging pullRequest: pullRequestURL: https://github.com/greencapitaltrade/mcu/pull/5187 startedTimestamp: "2026-08-05T14:14:21Z" status: Succeeded startedTimestamp: "2026-08-05T14:14:21Z" status: Succeeded - kind: Stage stage: completedTimestamp: "2026-08-05T14:16:12Z" name: from build pack startedTimestamp: "2026-08-05T14:10:50Z" status: Succeeded steps: - completedTimestamp: "2026-08-05T14:10:54Z" name: Git Clone startedTimestamp: "2026-08-05T14:10:50Z" status: Succeeded - completedTimestamp: "2026-08-05T14:11:00Z" name: Next Version startedTimestamp: "2026-08-05T14:10:55Z" status: Succeeded - completedTimestamp: "2026-08-05T14:11:05Z" name: Jx Variables startedTimestamp: "2026-08-05T14:11:01Z" status: Succeeded - completedTimestamp: "2026-08-05T14:12:02Z" name: Build Npm Install startedTimestamp: "2026-08-05T14:11:06Z" status: Succeeded - completedTimestamp: "2026-08-05T14:12:05Z" name: Check Registry startedTimestamp: "2026-08-05T14:12:03Z" status: Succeeded - completedTimestamp: "2026-08-05T14:13:17Z" name: Build Container Build startedTimestamp: "2026-08-05T14:12:06Z" status: Succeeded - completedTimestamp: "2026-08-05T14:13:27Z" name: Promote Changelog startedTimestamp: "2026-08-05T14:13:18Z" status: Succeeded - completedTimestamp: "2026-08-05T14:13:31Z" name: Promote Helm Release startedTimestamp: "2026-08-05T14:13:28Z" status: Succeeded - completedTimestamp: "2026-08-05T14:14:54Z" name: Promote Jx Promote startedTimestamp: "2026-08-05T14:13:32Z" status: Succeeded - completedTimestamp: "2026-08-05T14:16:12Z" name: Publish Org Kb startedTimestamp: "2026-08-05T14:14:55Z" status: Succeeded - kind: Stage stage: completedTimestamp: "2026-08-05T14:16:12Z" name: from build pack startedTimestamp: "2026-08-05T14:10:50Z" status: Succeeded steps: - completedTimestamp: "2026-08-05T14:10:54Z" name: Git Clone startedTimestamp: "2026-08-05T14:10:50Z" status: Succeeded - completedTimestamp: "2026-08-05T14:11:00Z" name: Next Version startedTimestamp: "2026-08-05T14:10:55Z" status: Succeeded - completedTimestamp: "2026-08-05T14:11:05Z" name: Jx Variables startedTimestamp: "2026-08-05T14:11:01Z" status: Succeeded - completedTimestamp: "2026-08-05T14:12:02Z" name: Build Npm Install startedTimestamp: "2026-08-05T14:11:06Z" status: Succeeded - completedTimestamp: "2026-08-05T14:12:05Z" name: Check Registry startedTimestamp: "2026-08-05T14:12:03Z" status: Succeeded - completedTimestamp: "2026-08-05T14:13:17Z" name: Build Container Build startedTimestamp: "2026-08-05T14:12:06Z" status: Succeeded - completedTimestamp: "2026-08-05T14:13:27Z" name: Promote Changelog startedTimestamp: "2026-08-05T14:13:18Z" status: Succeeded - completedTimestamp: "2026-08-05T14:13:31Z" name: Promote Helm Release startedTimestamp: "2026-08-05T14:13:28Z" status: Succeeded - completedTimestamp: "2026-08-05T14:14:54Z" name: Promote Jx Promote startedTimestamp: "2026-08-05T14:13:32Z" status: Succeeded - completedTimestamp: "2026-08-05T14:16:12Z" name: Publish Org Kb startedTimestamp: "2026-08-05T14:14:55Z" status: Succeeded version: 3.7.38 status: {}