apiVersion: jenkins.io/v1 kind: PipelineActivity metadata: annotations: lighthouse.jenkins-x.io/cloneURI: https://github.com/greencapitaltrade/flash.git lighthouse.jenkins-x.io/job: release pipeline.jenkins-x.io/traceID: 4b79895ef645b8e056ff4b2dc4cfd402 creationTimestamp: "2026-08-06T05:54:52Z" generation: 8 labels: branch: main build: "145" context: release created-by-lighthouse: "true" event-GUID: 53f1c4d4-915b-11f1-920c-58f8f4bd16fa lighthouse.jenkins-x.io/baseSHA: a15fcd3a45141cc26d3677cbdc462c4da974c34b lighthouse.jenkins-x.io/branch: main lighthouse.jenkins-x.io/buildNum: "1785995692256" lighthouse.jenkins-x.io/context: release lighthouse.jenkins-x.io/id: ncapitaltrade-flash-main-release-jh5ck lighthouse.jenkins-x.io/job: release lighthouse.jenkins-x.io/lastCommitSHA: a15fcd3a45141cc26d3677cbdc462c4da974c34b lighthouse.jenkins-x.io/refs.org: greencapitaltrade lighthouse.jenkins-x.io/refs.repo: flash lighthouse.jenkins-x.io/type: postsubmit owner: greencapitaltrade podName: ncapitaltrade-flash-main-release-kfcc5-from-build-pack-pod provider: github repository: flash tekton.dev/pipeline: ncapitaltrade-flash-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-06T06:01:58Z" - 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:completedTimestamp: {} f:context: {} f:gitBranch: {} f:gitOwner: {} f:gitRepository: {} f:gitUrl: {} f:message: {} f:pipeline: {} f:startedTimestamp: {} f:status: {} f:steps: {} manager: jx-build-controller operation: Update time: "2026-08-06T06:03:30Z" name: greencapitaltrade-flash-main-145 namespace: jx resourceVersion: "246773910" uid: f169f4cb-b268-4571-a185-116cba8c9f28 spec: baseSHA: a15fcd3a45141cc26d3677cbdc462c4da974c34b batchPipelineActivity: {} build: "145" buildLogsUrl: s3://logs-gct-prod-20260425045301534100000007/jenkins-x/logs/greencapitaltrade/flash/main/145.log completedTimestamp: "2026-08-06T06:03:22Z" context: release gitBranch: main gitOwner: greencapitaltrade gitRepository: flash gitUrl: https://github.com/greencapitaltrade/flash.git lastCommitMessage: | fix(deps): upgrade @apollo/client to 4.2.10 to fix SSR memory leak Production pods were OOMing roughly every 24h. Heap analysis of a live pod showed ~18.6 MiB/h of JS heap growth crossing V8's 524 MiB heap_size_limit, matching the observed restart cadence. Root cause: module-level gql documents are used as WeakMap keys by Apollo's optimism/@wry/trie memoisation. A WeakMap entry lives as long as its *key* is reachable, and a module-scope document is immortal, so every per-request cache entry was pinned forever. A snapshot at 10h uptime showed GET_ASSET_MODULES present as a key in 15,217 distinct WeakMaps, and 83,703 live Trie objects -- one set per request, never released. external/arrayBuffers were only ~6 MiB, confirming pure JS heap retention rather than Buffers or native handles. Fixed upstream in 4.0.10 (apollographql/apollo-client#13045, which patched the document-keyed memoisation) with a follow-up Trie retention fix in 4.0.12 (#13077). We were pinned at 4.0.7. packages/api declared "@apollo/client": "*", which yarn satisfied with the already-locked 4.0.7. Bumping only the root left a second Apollo copy in node_modules, and since @my/api is imported across packages/app/features/*, the leaking version would still have loaded in production. Aligning it collapses the tree to a single 4.2.10. Produced by: yarn up @apollo/client @apollo/client-integration-nextjs Verification: `yarn install --immutable` passes on node:26-slim (the CI image); lockfile resolves @apollo/client to exactly one version; unmet-peer count is unchanged at 162 before and after. Co-Authored-By: Claude Opus 5 (1M context) lastCommitSHA: 09183e4c497c0f1af8a0f79daa87d2a8bd58deed message: 'Tasks Completed: 1 (Failed: 0, Cancelled 0), Skipped: 0' pipeline: greencapitaltrade/flash/main releaseNotesURL: https://github.com/greencapitaltrade/flash/releases/tag/v0.18.9 startedTimestamp: "2026-08-06T05:54:52Z" status: Succeeded steps: - kind: Stage stage: completedTimestamp: "2026-08-06T06:03:22Z" name: from build pack startedTimestamp: "2026-08-06T05:54:56Z" status: Succeeded steps: - completedTimestamp: "2026-08-06T05:55:07Z" name: Git Clone startedTimestamp: "2026-08-06T05:54:56Z" status: Succeeded - completedTimestamp: "2026-08-06T05:55:10Z" name: Next Version startedTimestamp: "2026-08-06T05:55:07Z" status: Succeeded - completedTimestamp: "2026-08-06T05:55:13Z" name: Jx Variables startedTimestamp: "2026-08-06T05:55:11Z" status: Succeeded - completedTimestamp: "2026-08-06T05:58:34Z" name: Build Yarn Install startedTimestamp: "2026-08-06T05:55:14Z" status: Succeeded - completedTimestamp: "2026-08-06T05:59:14Z" name: Next Build startedTimestamp: "2026-08-06T05:58:35Z" status: Succeeded - completedTimestamp: "2026-08-06T05:59:17Z" name: Check Registry startedTimestamp: "2026-08-06T05:59:14Z" status: Succeeded - completedTimestamp: "2026-08-06T06:01:49Z" name: Build Container Build startedTimestamp: "2026-08-06T05:59:18Z" status: Succeeded - completedTimestamp: "2026-08-06T06:01:58Z" name: Promote Changelog startedTimestamp: "2026-08-06T06:01:49Z" status: Succeeded - completedTimestamp: "2026-08-06T06:02:02Z" name: Promote Helm Release startedTimestamp: "2026-08-06T06:01:59Z" status: Succeeded - completedTimestamp: "2026-08-06T06:02:44Z" name: Promote Jx Promote startedTimestamp: "2026-08-06T06:02:03Z" status: Succeeded - completedTimestamp: "2026-08-06T06:03:22Z" name: Publish Org Kb startedTimestamp: "2026-08-06T06:02:45Z" status: Succeeded - kind: Promote promote: environment: staging pullRequest: pullRequestURL: https://github.com/greencapitaltrade/mcu/pull/5208 startedTimestamp: "2026-08-06T06:02:24Z" status: Succeeded startedTimestamp: "2026-08-06T06:02:24Z" status: Succeeded - kind: Promote promote: environment: production pullRequest: pullRequestURL: https://github.com/greencapitaltrade/mcu/pull/5209 startedTimestamp: "2026-08-06T06:02:41Z" status: Succeeded startedTimestamp: "2026-08-06T06:02:41Z" status: Succeeded version: 0.18.9 status: {}