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: d1d656541b69bff68ee0442c5e5a3e02 creationTimestamp: "2026-05-26T07:39:02Z" generation: 8 labels: branch: main build: "74" context: release created-by-lighthouse: "true" event-GUID: f491335c-58d5-11f1-970c-b2f7d131e526 lighthouse.jenkins-x.io/baseSHA: c8dda7e5b5f249abff16632ca92269074fe202b5 lighthouse.jenkins-x.io/branch: main lighthouse.jenkins-x.io/buildNum: "1779781142733" lighthouse.jenkins-x.io/context: release lighthouse.jenkins-x.io/id: ncapitaltrade-flash-main-release-zkskq lighthouse.jenkins-x.io/job: release lighthouse.jenkins-x.io/lastCommitSHA: c8dda7e5b5f249abff16632ca92269074fe202b5 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-hv9fz-from-build-pack-pod provider: github repository: flash tekton.dev/pipeline: ncapitaltrade-flash-main-release-hv9fz 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.18 operation: Update time: "2026-05-26T07:45:56Z" - 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-05-26T07:46:51Z" name: greencapitaltrade-flash-main-74 namespace: jx resourceVersion: "51043746" uid: 45672095-09d7-4e41-b06a-e454a9ec6894 spec: baseSHA: c8dda7e5b5f249abff16632ca92269074fe202b5 batchPipelineActivity: {} build: "74" buildLogsUrl: s3://logs-gct-prod-20260425045301534100000007/jenkins-x/logs/greencapitaltrade/flash/main/74.log completedTimestamp: "2026-05-26T07:46:37Z" context: release gitBranch: main gitOwner: greencapitaltrade gitRepository: flash gitUrl: https://github.com/greencapitaltrade/flash.git lastCommitMessage: "feat(geofence): multi-asset assignment UI on asset-bound edit page\n\nSales priority area #1 (tracking + geofence): users want one zone\nto apply to multiple vehicles in a team. The backend has supported\nasset_ids: [Int] since fury#1953/1954 and bifrost#171, but the UI\nhardcoded asset_ids: [numericAssetId] on save — every multi-asset\nintent silently collapsed to a single asset.\n\nUI:\n- GeofenceDrawingScreen accepts optional availableAssets prop and\n renders a checkbox list of pickable assets. Defaults seed with the\n currently-open asset so the one-click asset-bound flow keeps its\n zero-friction default; the user toggles others on/off.\n- selectedAssetIds state seeded from editingGeofence.asset_ids when\n editing, else [asset.id] when creating.\n- Save passes asset_ids: selectedAssetIds in the geofenceData.\n\nUtil:\n- GeofenceData carries asset_ids?: number[].\n- mapApiGeofenceToDrawingGeofence copies area.asset_ids onto the\n returned data (round-trip preservation on edit).\n- geofenceToApiInput emits asset_ids straight from the GeofenceData\n input; no more single-asset hardcode on the page side.\n\nEdit page:\n- useAssets({ limit: 200 }) fetches the team asset pool.\n- availableAssets forwarded to GeofenceDrawingScreen.\n- The mutation's data: { ... } block no longer overrides asset_ids\n — ...input carries it from the picker.\n\nTDD (10 new tests in geofence-multi-asset-ui.test.ts):\n- GeofenceData has asset_ids\n- screen accepts availableAssets\n- selectedAssetIds state tracked\n- seeded from editingGeofence.asset_ids\n- save passes asset_ids: selectedAssetIds\n- util round-trip preserves asset_ids\n- edit page drops the [numericAssetId] hardcode\n- edit page sends asset_ids in mutation variables\n- edit page calls useAssets\n- edit page forwards availableAssets\n\nRED → GREEN. Also updated the one geofence.test.ts toEqual that\nshape-matched the old GeofenceData (now includes asset_ids: []).\nAll 93 asset-feature tests green.\n\n\U0001F916 Generated with [Claude Code](https://claude.com/claude-code)\n\nCo-Authored-By: Claude Opus 4.7 \n" lastCommitSHA: a0091ca1419aaa74bfdbf5c14e9f73ce250468b1 message: 'Tasks Completed: 1 (Failed: 0, Cancelled 0), Skipped: 0' pipeline: greencapitaltrade/flash/main releaseNotesURL: https://github.com/greencapitaltrade/flash/releases/tag/v0.10.0 startedTimestamp: "2026-05-26T07:39:02Z" status: Succeeded steps: - kind: Stage stage: completedTimestamp: "2026-05-26T07:46:37Z" name: from build pack startedTimestamp: "2026-05-26T07:39:08Z" status: Succeeded steps: - completedTimestamp: "2026-05-26T07:39:15Z" name: Git Clone startedTimestamp: "2026-05-26T07:39:08Z" status: Succeeded - completedTimestamp: "2026-05-26T07:39:18Z" name: Next Version startedTimestamp: "2026-05-26T07:39:16Z" status: Succeeded - completedTimestamp: "2026-05-26T07:39:22Z" name: Jx Variables startedTimestamp: "2026-05-26T07:39:18Z" status: Succeeded - completedTimestamp: "2026-05-26T07:41:54Z" name: Build Yarn Install startedTimestamp: "2026-05-26T07:39:22Z" status: Succeeded - completedTimestamp: "2026-05-26T07:42:45Z" name: Next Build startedTimestamp: "2026-05-26T07:41:55Z" status: Succeeded - completedTimestamp: "2026-05-26T07:42:48Z" name: Check Registry startedTimestamp: "2026-05-26T07:42:45Z" status: Succeeded - completedTimestamp: "2026-05-26T07:45:45Z" name: Build Container Build startedTimestamp: "2026-05-26T07:42:48Z" status: Succeeded - completedTimestamp: "2026-05-26T07:45:56Z" name: Promote Changelog startedTimestamp: "2026-05-26T07:45:46Z" status: Succeeded - completedTimestamp: "2026-05-26T07:45:59Z" name: Promote Helm Release startedTimestamp: "2026-05-26T07:45:56Z" status: Succeeded - completedTimestamp: "2026-05-26T07:46:37Z" name: Promote Jx Promote startedTimestamp: "2026-05-26T07:45:59Z" status: Succeeded - kind: Promote promote: environment: staging pullRequest: pullRequestURL: https://github.com/greencapitaltrade/mcu/pull/4005 startedTimestamp: "2026-05-26T07:46:18Z" status: Succeeded startedTimestamp: "2026-05-26T07:46:18Z" status: Succeeded - kind: Promote promote: environment: production pullRequest: pullRequestURL: https://github.com/greencapitaltrade/mcu/pull/4006 startedTimestamp: "2026-05-26T07:46:34Z" status: Succeeded startedTimestamp: "2026-05-26T07:46:34Z" status: Succeeded version: 0.10.0 status: {}