apiVersion: jenkins.io/v1 kind: PipelineActivity metadata: annotations: lighthouse.jenkins-x.io/cloneURI: https://github.com/greencapitaltrade/deadpool.git lighthouse.jenkins-x.io/job: release pipeline.jenkins-x.io/traceID: 454f956d94599de041fa96d9cff7f4d8 creationTimestamp: "2026-07-28T14:25:27Z" generation: 8 labels: branch: main build: "96" context: release created-by-lighthouse: "true" event-GUID: 2b591ad0-8a90-11f1-845d-3b2ec11bbf8f lighthouse.jenkins-x.io/baseSHA: eacba08568e5f948c23333bab76c509e9c21d5d0 lighthouse.jenkins-x.io/branch: main lighthouse.jenkins-x.io/buildNum: "1785248727216" lighthouse.jenkins-x.io/context: release lighthouse.jenkins-x.io/id: pitaltrade-deadpool-main-release-mz7b7 lighthouse.jenkins-x.io/job: release lighthouse.jenkins-x.io/lastCommitSHA: eacba08568e5f948c23333bab76c509e9c21d5d0 lighthouse.jenkins-x.io/refs.org: greencapitaltrade lighthouse.jenkins-x.io/refs.repo: deadpool lighthouse.jenkins-x.io/type: postsubmit owner: greencapitaltrade podName: pitaltrade-deadpool-main-release-jgvn6-from-build-pack-pod provider: github repository: deadpool tekton.dev/pipeline: pitaltrade-deadpool-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.22 operation: Update time: "2026-07-28T14:32:19Z" - 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-07-28T14:33:28Z" name: greencapitaltrade-deadpool-main-96 namespace: jx resourceVersion: "223619084" uid: a2dfdb3f-0391-4d37-bfdf-9b7468a2a46e spec: baseSHA: eacba08568e5f948c23333bab76c509e9c21d5d0 batchPipelineActivity: {} build: "96" buildLogsUrl: s3://logs-gct-prod-20260425045301534100000007/jenkins-x/logs/greencapitaltrade/deadpool/main/96.log completedTimestamp: "2026-07-28T14:33:20Z" context: release gitBranch: main gitOwner: greencapitaltrade gitRepository: deadpool gitUrl: https://github.com/greencapitaltrade/deadpool.git lastCommitMessage: | fix(tcp-server): split the socket so commands aren't blocked by the read loop A command reached the TCP server and then produced no dispatch log at all — neither "Command sent to device", nor "No active connection", nor a send error, though the code emits exactly one of the three. Observed in production with log_id 91: the consumer dispatched it, the server logged "Processing command for device …", and nothing followed. Cause: the connection held one `Mutex` for both directions, and the read loop takes that lock *around* its 30s read timeout: let mut stream = self.stream.lock().await; timeout(Duration::from_secs(30), stream.read_buf(&mut buffer)).await So `send_response` — used by the command processor to write to the device — had to wait for the device to send something, or for the 30s timeout to expire, before it could take the lock. Outbound commands were queued behind inbound traffic on a socket that is idle most of the time. Split the socket with `tokio::io::split` and give each half its own lock. The read loop may hold the read lock as long as it likes; a command is written the moment it arrives. Co-Authored-By: Claude Opus 4.8 (1M context) lastCommitSHA: 3c34075d7af382b80af597c6d61a47625951bc03 message: 'Tasks Completed: 1 (Failed: 0, Cancelled 0), Skipped: 0' pipeline: greencapitaltrade/deadpool/main releaseNotesURL: https://github.com/greencapitaltrade/deadpool/releases/tag/v0.61.4 startedTimestamp: "2026-07-28T14:25:27Z" status: Succeeded steps: - kind: Stage stage: completedTimestamp: "2026-07-28T14:33:20Z" name: from build pack startedTimestamp: "2026-07-28T14:25:46Z" status: Succeeded steps: - completedTimestamp: "2026-07-28T14:25:47Z" name: Git Clone startedTimestamp: "2026-07-28T14:25:46Z" status: Succeeded - completedTimestamp: "2026-07-28T14:25:49Z" name: Next Version startedTimestamp: "2026-07-28T14:25:47Z" status: Succeeded - completedTimestamp: "2026-07-28T14:25:54Z" name: Jx Variables startedTimestamp: "2026-07-28T14:25:49Z" status: Succeeded - completedTimestamp: "2026-07-28T14:31:57Z" name: Build Cargo Install startedTimestamp: "2026-07-28T14:25:55Z" status: Succeeded - completedTimestamp: "2026-07-28T14:32:01Z" name: Check Registry startedTimestamp: "2026-07-28T14:31:58Z" status: Succeeded - completedTimestamp: "2026-07-28T14:32:03Z" name: Build Server Image startedTimestamp: "2026-07-28T14:32:01Z" status: Succeeded - completedTimestamp: "2026-07-28T14:32:04Z" name: Build Consumer Image startedTimestamp: "2026-07-28T14:32:03Z" status: Succeeded - completedTimestamp: "2026-07-28T14:32:07Z" name: Build Mqtt Image startedTimestamp: "2026-07-28T14:32:05Z" status: Succeeded - completedTimestamp: "2026-07-28T14:32:19Z" name: Promote Changelog startedTimestamp: "2026-07-28T14:32:07Z" status: Succeeded - completedTimestamp: "2026-07-28T14:32:23Z" name: Promote Helm Release startedTimestamp: "2026-07-28T14:32:19Z" status: Succeeded - completedTimestamp: "2026-07-28T14:33:05Z" name: Promote Jx Promote startedTimestamp: "2026-07-28T14:32:24Z" status: Succeeded - completedTimestamp: "2026-07-28T14:33:20Z" name: Publish Org Kb startedTimestamp: "2026-07-28T14:33:05Z" status: Succeeded - kind: Promote promote: environment: staging pullRequest: pullRequestURL: https://github.com/greencapitaltrade/mcu/pull/4943 startedTimestamp: "2026-07-28T14:32:46Z" status: Succeeded startedTimestamp: "2026-07-28T14:32:46Z" status: Succeeded - kind: Promote promote: environment: production pullRequest: pullRequestURL: https://github.com/greencapitaltrade/mcu/pull/4944 startedTimestamp: "2026-07-28T14:33:02Z" status: Succeeded startedTimestamp: "2026-07-28T14:33:02Z" status: Succeeded version: 0.61.4 status: {}