diff --git a/deploy/artifact-catalog.dev.json b/deploy/artifact-catalog.dev.json index c17551b5..8acdfb25 100644 --- a/deploy/artifact-catalog.dev.json +++ b/deploy/artifact-catalog.dev.json @@ -5,13 +5,13 @@ "profile": "dev", "namespace": "hwlab-dev", "endpoint": "http://74.48.78.17:16667", - "commitId": "c7de474", - "artifactState": "contract-skeleton", + "commitId": "7de6edd", + "artifactState": "published", "publish": { - "ciPublished": false, - "registryVerified": false, - "provenance": "not_available_until_publish", - "note": "Artifact identity was refreshed to this source commit, but no publish report proved registry digests." + "ciPublished": true, + "registryVerified": true, + "provenance": "reports/dev-gate/dev-artifacts.json", + "note": "Digest fields were copied from a successful DEV artifact publish report for this source commit." }, "healthContract": { "method": "GET", @@ -66,11 +66,11 @@ "services": [ { "serviceId": "hwlab-cloud-api", - "commitId": "c7de474", - "image": "127.0.0.1:5000/hwlab/hwlab-cloud-api:c7de474", - "imageTag": "c7de474", - "digest": "not_published", - "publishState": "skeleton-only", + "commitId": "7de6edd", + "image": "127.0.0.1:5000/hwlab/hwlab-cloud-api:7de6edd", + "imageTag": "7de6edd", + "digest": "sha256:8a0120e976f8369c19887d33d004b763c7dbff3f43fd023fb186abffe199b3ea", + "publishState": "published", "profile": "dev", "namespace": "hwlab-dev", "healthPath": "/health/live", @@ -78,15 +78,15 @@ "publishEnabled": true, "artifactRequired": true, "artifactScope": "required", - "notPublishedReason": "publish_not_run" + "notPublishedReason": null }, { "serviceId": "hwlab-cloud-web", - "commitId": "c7de474", - "image": "127.0.0.1:5000/hwlab/hwlab-cloud-web:c7de474", - "imageTag": "c7de474", - "digest": "not_published", - "publishState": "skeleton-only", + "commitId": "7de6edd", + "image": "127.0.0.1:5000/hwlab/hwlab-cloud-web:7de6edd", + "imageTag": "7de6edd", + "digest": "sha256:a302a8b4f3c6e7a91e5046398b803e9915dba873cefac97bb7069886b5a48d61", + "publishState": "published", "profile": "dev", "namespace": "hwlab-dev", "healthPath": "/health/live", @@ -94,15 +94,15 @@ "publishEnabled": true, "artifactRequired": true, "artifactScope": "required", - "notPublishedReason": "publish_not_run" + "notPublishedReason": null }, { "serviceId": "hwlab-agent-mgr", - "commitId": "c7de474", - "image": "127.0.0.1:5000/hwlab/hwlab-agent-mgr:c7de474", - "imageTag": "c7de474", - "digest": "not_published", - "publishState": "skeleton-only", + "commitId": "7de6edd", + "image": "127.0.0.1:5000/hwlab/hwlab-agent-mgr:7de6edd", + "imageTag": "7de6edd", + "digest": "sha256:a16bba1762f58e4daed7ef94243e3f4f0522332704c9f40bcadab77f11acc7a2", + "publishState": "published", "profile": "dev", "namespace": "hwlab-dev", "healthPath": "/health/live", @@ -110,15 +110,15 @@ "publishEnabled": true, "artifactRequired": true, "artifactScope": "required", - "notPublishedReason": "publish_not_run" + "notPublishedReason": null }, { "serviceId": "hwlab-agent-worker", - "commitId": "c7de474", - "image": "127.0.0.1:5000/hwlab/hwlab-agent-worker:c7de474", - "imageTag": "c7de474", - "digest": "not_published", - "publishState": "skeleton-only", + "commitId": "7de6edd", + "image": "127.0.0.1:5000/hwlab/hwlab-agent-worker:7de6edd", + "imageTag": "7de6edd", + "digest": "sha256:3c75cb9d6c2b7392749d972c78f9b7a89e4f099a64f902d2eb9810f16d551ceb", + "publishState": "published", "profile": "dev", "namespace": "hwlab-dev", "healthPath": "/health/live", @@ -126,15 +126,15 @@ "publishEnabled": true, "artifactRequired": true, "artifactScope": "required", - "notPublishedReason": "publish_not_run" + "notPublishedReason": null }, { "serviceId": "hwlab-gateway", - "commitId": "c7de474", - "image": "127.0.0.1:5000/hwlab/hwlab-gateway:c7de474", - "imageTag": "c7de474", - "digest": "not_published", - "publishState": "skeleton-only", + "commitId": "7de6edd", + "image": "127.0.0.1:5000/hwlab/hwlab-gateway:7de6edd", + "imageTag": "7de6edd", + "digest": "sha256:b5374c763d54628c2e81b86c93c826a27629a8546ae789223e0553ca7c8ab80a", + "publishState": "published", "profile": "dev", "namespace": "hwlab-dev", "healthPath": "/health/live", @@ -142,15 +142,15 @@ "publishEnabled": true, "artifactRequired": true, "artifactScope": "required", - "notPublishedReason": "publish_not_run" + "notPublishedReason": null }, { "serviceId": "hwlab-gateway-simu", - "commitId": "c7de474", - "image": "127.0.0.1:5000/hwlab/hwlab-gateway-simu:c7de474", - "imageTag": "c7de474", - "digest": "not_published", - "publishState": "skeleton-only", + "commitId": "7de6edd", + "image": "127.0.0.1:5000/hwlab/hwlab-gateway-simu:7de6edd", + "imageTag": "7de6edd", + "digest": "sha256:be6aff770319c6c2b45f7b5974d4fb7aae4aab79a6670b1d8b87e194387e30dd", + "publishState": "published", "profile": "dev", "namespace": "hwlab-dev", "healthPath": "/health/live", @@ -158,15 +158,15 @@ "publishEnabled": true, "artifactRequired": true, "artifactScope": "required", - "notPublishedReason": "publish_not_run" + "notPublishedReason": null }, { "serviceId": "hwlab-box-simu", - "commitId": "c7de474", - "image": "127.0.0.1:5000/hwlab/hwlab-box-simu:c7de474", - "imageTag": "c7de474", - "digest": "not_published", - "publishState": "skeleton-only", + "commitId": "7de6edd", + "image": "127.0.0.1:5000/hwlab/hwlab-box-simu:7de6edd", + "imageTag": "7de6edd", + "digest": "sha256:54e77f4c2ea9e87fd16becde9a5fe05b935f2472dba443458257dfdda1e87c27", + "publishState": "published", "profile": "dev", "namespace": "hwlab-dev", "healthPath": "/health/live", @@ -174,15 +174,15 @@ "publishEnabled": true, "artifactRequired": true, "artifactScope": "required", - "notPublishedReason": "publish_not_run" + "notPublishedReason": null }, { "serviceId": "hwlab-patch-panel", - "commitId": "c7de474", - "image": "127.0.0.1:5000/hwlab/hwlab-patch-panel:c7de474", - "imageTag": "c7de474", - "digest": "not_published", - "publishState": "skeleton-only", + "commitId": "7de6edd", + "image": "127.0.0.1:5000/hwlab/hwlab-patch-panel:7de6edd", + "imageTag": "7de6edd", + "digest": "sha256:02bec561d5f08f850e2884a2098da72978ad319d5bd799704ad9650778f11ae2", + "publishState": "published", "profile": "dev", "namespace": "hwlab-dev", "healthPath": "/health/live", @@ -190,15 +190,15 @@ "publishEnabled": true, "artifactRequired": true, "artifactScope": "required", - "notPublishedReason": "publish_not_run" + "notPublishedReason": null }, { "serviceId": "hwlab-router", - "commitId": "c7de474", - "image": "127.0.0.1:5000/hwlab/hwlab-router:c7de474", - "imageTag": "c7de474", - "digest": "not_published", - "publishState": "skeleton-only", + "commitId": "7de6edd", + "image": "127.0.0.1:5000/hwlab/hwlab-router:7de6edd", + "imageTag": "7de6edd", + "digest": "sha256:bb3b10c486bb1305f4cae7ec2751947eeb0cc60c9993d54e93802b5df3b13fb6", + "publishState": "published", "profile": "dev", "namespace": "hwlab-dev", "healthPath": "/health/live", @@ -206,15 +206,15 @@ "publishEnabled": true, "artifactRequired": true, "artifactScope": "required", - "notPublishedReason": "publish_not_run" + "notPublishedReason": null }, { "serviceId": "hwlab-tunnel-client", - "commitId": "c7de474", - "image": "127.0.0.1:5000/hwlab/hwlab-tunnel-client:c7de474", - "imageTag": "c7de474", - "digest": "not_published", - "publishState": "skeleton-only", + "commitId": "7de6edd", + "image": "127.0.0.1:5000/hwlab/hwlab-tunnel-client:7de6edd", + "imageTag": "7de6edd", + "digest": "sha256:ce9fa92362dd10911dcd66c59412690ccde401ce4ef82b548cfcea37499a725f", + "publishState": "published", "profile": "dev", "namespace": "hwlab-dev", "healthPath": "/health/live", @@ -222,15 +222,15 @@ "publishEnabled": true, "artifactRequired": true, "artifactScope": "required", - "notPublishedReason": "publish_not_run" + "notPublishedReason": null }, { "serviceId": "hwlab-edge-proxy", - "commitId": "c7de474", - "image": "127.0.0.1:5000/hwlab/hwlab-edge-proxy:c7de474", - "imageTag": "c7de474", - "digest": "not_published", - "publishState": "skeleton-only", + "commitId": "7de6edd", + "image": "127.0.0.1:5000/hwlab/hwlab-edge-proxy:7de6edd", + "imageTag": "7de6edd", + "digest": "sha256:bf19f6812cbac3c54c938ad12a2b1ef9626a746017f85658b9960a1761afa32c", + "publishState": "published", "profile": "dev", "namespace": "hwlab-dev", "healthPath": "/health/live", @@ -238,15 +238,15 @@ "publishEnabled": true, "artifactRequired": true, "artifactScope": "required", - "notPublishedReason": "publish_not_run" + "notPublishedReason": null }, { "serviceId": "hwlab-cli", - "commitId": "c7de474", - "image": "127.0.0.1:5000/hwlab/hwlab-cli:c7de474", - "imageTag": "c7de474", - "digest": "not_published", - "publishState": "skeleton-only", + "commitId": "7de6edd", + "image": "127.0.0.1:5000/hwlab/hwlab-cli:7de6edd", + "imageTag": "7de6edd", + "digest": "sha256:b169c015c4c06dcdf6d43131d69dd72be1996cb5970e25014c4cec0271b459c0", + "publishState": "published", "profile": "dev", "namespace": "hwlab-dev", "healthPath": "/health/live", @@ -254,15 +254,15 @@ "publishEnabled": true, "artifactRequired": true, "artifactScope": "required", - "notPublishedReason": "publish_not_run" + "notPublishedReason": null }, { "serviceId": "hwlab-agent-skills", - "commitId": "c7de474", - "image": "127.0.0.1:5000/hwlab/hwlab-agent-skills:c7de474", - "imageTag": "c7de474", - "digest": "not_published", - "publishState": "skeleton-only", + "commitId": "7de6edd", + "image": "127.0.0.1:5000/hwlab/hwlab-agent-skills:7de6edd", + "imageTag": "7de6edd", + "digest": "sha256:7d1b6871763613bf7c6e37f5b05b1b49e2c367b4b0b94abfbb9bceb7ab5de4ed", + "publishState": "published", "profile": "dev", "namespace": "hwlab-dev", "healthPath": "/health/live", @@ -270,7 +270,7 @@ "publishEnabled": true, "artifactRequired": true, "artifactScope": "required", - "notPublishedReason": "publish_not_run" + "notPublishedReason": null } ], "serviceInventory": { diff --git a/deploy/deploy.json b/deploy/deploy.json index c8ea8b94..016aebcb 100644 --- a/deploy/deploy.json +++ b/deploy/deploy.json @@ -1,7 +1,7 @@ { "manifestVersion": "v1", "environment": "dev", - "commitId": "c7de474", + "commitId": "7de6edd", "namespace": "hwlab-dev", "endpoint": "http://74.48.78.17:16667", "health": { @@ -181,7 +181,7 @@ "services": [ { "serviceId": "hwlab-cloud-api", - "image": "127.0.0.1:5000/hwlab/hwlab-cloud-api:c7de474", + "image": "127.0.0.1:5000/hwlab/hwlab-cloud-api:7de6edd", "namespace": "hwlab-dev", "healthPath": "/health/live", "profile": "dev", @@ -189,9 +189,9 @@ "env": { "HWLAB_ENVIRONMENT": "dev", "HWLAB_PUBLIC_ENDPOINT": "http://74.48.78.17:16667", - "HWLAB_COMMIT_ID": "c7de474", - "HWLAB_IMAGE": "127.0.0.1:5000/hwlab/hwlab-cloud-api:c7de474", - "HWLAB_IMAGE_TAG": "c7de474", + "HWLAB_COMMIT_ID": "7de6edd", + "HWLAB_IMAGE": "127.0.0.1:5000/hwlab/hwlab-cloud-api:7de6edd", + "HWLAB_IMAGE_TAG": "7de6edd", "HWLAB_RUNTIME_SUBSTITUTE_FORBIDDEN": "unidesk-backend,provider-gateway,microservice-proxy", "HWLAB_CLOUD_DB_URL": "secretRef:hwlab-cloud-api-dev-db/database-url", "HWLAB_CLOUD_DB_SSL_MODE": "require", @@ -206,7 +206,7 @@ }, { "serviceId": "hwlab-cloud-web", - "image": "127.0.0.1:5000/hwlab/hwlab-cloud-web:c7de474", + "image": "127.0.0.1:5000/hwlab/hwlab-cloud-web:7de6edd", "namespace": "hwlab-dev", "healthPath": "/health/live", "profile": "dev", @@ -218,7 +218,7 @@ }, { "serviceId": "hwlab-agent-mgr", - "image": "127.0.0.1:5000/hwlab/hwlab-agent-mgr:c7de474", + "image": "127.0.0.1:5000/hwlab/hwlab-agent-mgr:7de6edd", "namespace": "hwlab-dev", "healthPath": "/health/live", "profile": "dev", @@ -230,7 +230,7 @@ }, { "serviceId": "hwlab-agent-worker", - "image": "127.0.0.1:5000/hwlab/hwlab-agent-worker:c7de474", + "image": "127.0.0.1:5000/hwlab/hwlab-agent-worker:7de6edd", "namespace": "hwlab-dev", "healthPath": "/health/live", "profile": "dev", @@ -242,7 +242,7 @@ }, { "serviceId": "hwlab-gateway", - "image": "127.0.0.1:5000/hwlab/hwlab-gateway:c7de474", + "image": "127.0.0.1:5000/hwlab/hwlab-gateway:7de6edd", "namespace": "hwlab-dev", "healthPath": "/health/live", "profile": "dev", @@ -254,12 +254,15 @@ }, { "serviceId": "hwlab-gateway-simu", - "image": "127.0.0.1:5000/hwlab/hwlab-gateway-simu:c7de474", + "image": "127.0.0.1:5000/hwlab/hwlab-gateway-simu:7de6edd", "namespace": "hwlab-dev", "healthPath": "/health/live", "profile": "dev", "replicas": 2, - "instanceNames": ["hwlab-gateway-simu-1", "hwlab-gateway-simu-2"], + "instanceNames": [ + "hwlab-gateway-simu-1", + "hwlab-gateway-simu-2" + ], "identityStrategy": "indexed-workloads", "env": { "HWLAB_GATEWAY_MODE": "simulator", @@ -271,12 +274,15 @@ }, { "serviceId": "hwlab-box-simu", - "image": "127.0.0.1:5000/hwlab/hwlab-box-simu:c7de474", + "image": "127.0.0.1:5000/hwlab/hwlab-box-simu:7de6edd", "namespace": "hwlab-dev", "healthPath": "/health/live", "profile": "dev", "replicas": 2, - "instanceNames": ["hwlab-box-simu-1", "hwlab-box-simu-2"], + "instanceNames": [ + "hwlab-box-simu-1", + "hwlab-box-simu-2" + ], "identityStrategy": "indexed-workloads", "env": { "HWLAB_BOX_ID": "boxsimu_1,boxsimu_2", @@ -287,7 +293,7 @@ }, { "serviceId": "hwlab-patch-panel", - "image": "127.0.0.1:5000/hwlab/hwlab-patch-panel:c7de474", + "image": "127.0.0.1:5000/hwlab/hwlab-patch-panel:7de6edd", "namespace": "hwlab-dev", "healthPath": "/health/live", "profile": "dev", @@ -300,7 +306,7 @@ }, { "serviceId": "hwlab-router", - "image": "127.0.0.1:5000/hwlab/hwlab-router:c7de474", + "image": "127.0.0.1:5000/hwlab/hwlab-router:7de6edd", "namespace": "hwlab-dev", "healthPath": "/health/live", "profile": "dev", @@ -312,7 +318,7 @@ }, { "serviceId": "hwlab-tunnel-client", - "image": "127.0.0.1:5000/hwlab/hwlab-tunnel-client:c7de474", + "image": "127.0.0.1:5000/hwlab/hwlab-tunnel-client:7de6edd", "namespace": "hwlab-dev", "healthPath": "/health/live", "profile": "dev", @@ -326,7 +332,7 @@ }, { "serviceId": "hwlab-edge-proxy", - "image": "127.0.0.1:5000/hwlab/hwlab-edge-proxy:c7de474", + "image": "127.0.0.1:5000/hwlab/hwlab-edge-proxy:7de6edd", "namespace": "hwlab-dev", "healthPath": "/health/live", "profile": "dev", @@ -338,7 +344,7 @@ }, { "serviceId": "hwlab-cli", - "image": "127.0.0.1:5000/hwlab/hwlab-cli:c7de474", + "image": "127.0.0.1:5000/hwlab/hwlab-cli:7de6edd", "namespace": "hwlab-dev", "healthPath": "/health/live", "profile": "dev", @@ -349,13 +355,13 @@ }, { "serviceId": "hwlab-agent-skills", - "image": "127.0.0.1:5000/hwlab/hwlab-agent-skills:c7de474", + "image": "127.0.0.1:5000/hwlab/hwlab-agent-skills:7de6edd", "namespace": "hwlab-dev", "healthPath": "/health/live", "profile": "dev", "replicas": 1, "env": { - "HWLAB_SKILLS_COMMIT_ID": "c7de474" + "HWLAB_SKILLS_COMMIT_ID": "7de6edd" } } ], diff --git a/deploy/k8s/base/workloads.yaml b/deploy/k8s/base/workloads.yaml index 85e7a41a..94aa6561 100644 --- a/deploy/k8s/base/workloads.yaml +++ b/deploy/k8s/base/workloads.yaml @@ -31,7 +31,7 @@ "containers": [ { "name": "hwlab-cloud-api", - "image": "127.0.0.1:5000/hwlab/hwlab-cloud-api:c7de474", + "image": "127.0.0.1:5000/hwlab/hwlab-cloud-api:7de6edd", "ports": [ { "name": "http", @@ -49,15 +49,15 @@ }, { "name": "HWLAB_COMMIT_ID", - "value": "c7de474" + "value": "7de6edd" }, { "name": "HWLAB_IMAGE", - "value": "127.0.0.1:5000/hwlab/hwlab-cloud-api:c7de474" + "value": "127.0.0.1:5000/hwlab/hwlab-cloud-api:7de6edd" }, { "name": "HWLAB_IMAGE_TAG", - "value": "c7de474" + "value": "7de6edd" }, { "name": "HWLAB_RUNTIME_SUBSTITUTE_FORBIDDEN", @@ -159,7 +159,7 @@ "containers": [ { "name": "hwlab-cloud-web", - "image": "127.0.0.1:5000/hwlab/hwlab-cloud-web:c7de474", + "image": "127.0.0.1:5000/hwlab/hwlab-cloud-web:7de6edd", "ports": [ { "name": "http", @@ -219,7 +219,7 @@ "containers": [ { "name": "hwlab-agent-mgr", - "image": "127.0.0.1:5000/hwlab/hwlab-agent-mgr:c7de474", + "image": "127.0.0.1:5000/hwlab/hwlab-agent-mgr:7de6edd", "ports": [ { "name": "http", @@ -275,7 +275,7 @@ "containers": [ { "name": "hwlab-agent-worker", - "image": "127.0.0.1:5000/hwlab/hwlab-agent-worker:c7de474", + "image": "127.0.0.1:5000/hwlab/hwlab-agent-worker:7de6edd", "env": [ { "name": "HWLAB_AGENT_SESSION_MODE", @@ -318,7 +318,7 @@ "containers": [ { "name": "hwlab-gateway", - "image": "127.0.0.1:5000/hwlab/hwlab-gateway:c7de474", + "image": "127.0.0.1:5000/hwlab/hwlab-gateway:7de6edd", "ports": [ { "name": "http", @@ -379,7 +379,7 @@ "containers": [ { "name": "hwlab-gateway-simu", - "image": "127.0.0.1:5000/hwlab/hwlab-gateway-simu:c7de474", + "image": "127.0.0.1:5000/hwlab/hwlab-gateway-simu:7de6edd", "ports": [ { "name": "http", @@ -452,7 +452,7 @@ "containers": [ { "name": "hwlab-box-simu", - "image": "127.0.0.1:5000/hwlab/hwlab-box-simu:c7de474", + "image": "127.0.0.1:5000/hwlab/hwlab-box-simu:7de6edd", "ports": [ { "name": "http", @@ -520,7 +520,7 @@ "containers": [ { "name": "hwlab-patch-panel", - "image": "127.0.0.1:5000/hwlab/hwlab-patch-panel:c7de474", + "image": "127.0.0.1:5000/hwlab/hwlab-patch-panel:7de6edd", "ports": [ { "name": "http", @@ -580,7 +580,7 @@ "containers": [ { "name": "hwlab-router", - "image": "127.0.0.1:5000/hwlab/hwlab-router:c7de474", + "image": "127.0.0.1:5000/hwlab/hwlab-router:7de6edd", "ports": [ { "name": "http", @@ -640,7 +640,7 @@ "containers": [ { "name": "hwlab-tunnel-client", - "image": "127.0.0.1:5000/hwlab/hwlab-tunnel-client:c7de474", + "image": "127.0.0.1:5000/hwlab/hwlab-tunnel-client:7de6edd", "ports": [ { "name": "http", @@ -712,7 +712,7 @@ "containers": [ { "name": "hwlab-edge-proxy", - "image": "127.0.0.1:5000/hwlab/hwlab-edge-proxy:c7de474", + "image": "127.0.0.1:5000/hwlab/hwlab-edge-proxy:7de6edd", "ports": [ { "name": "http", @@ -773,7 +773,7 @@ "containers": [ { "name": "hwlab-cli", - "image": "127.0.0.1:5000/hwlab/hwlab-cli:c7de474", + "image": "127.0.0.1:5000/hwlab/hwlab-cli:7de6edd", "env": [ { "name": "HWLAB_CLI_ENDPOINT", @@ -815,7 +815,7 @@ "containers": [ { "name": "hwlab-agent-skills", - "image": "127.0.0.1:5000/hwlab/hwlab-agent-skills:c7de474", + "image": "127.0.0.1:5000/hwlab/hwlab-agent-skills:7de6edd", "ports": [ { "name": "http", @@ -825,7 +825,7 @@ "env": [ { "name": "HWLAB_SKILLS_COMMIT_ID", - "value": "c7de474" + "value": "7de6edd" } ], "readinessProbe": { diff --git a/reports/dev-gate/dev-artifacts.json b/reports/dev-gate/dev-artifacts.json index 9f8d81c2..f31a302b 100644 --- a/reports/dev-gate/dev-artifacts.json +++ b/reports/dev-gate/dev-artifacts.json @@ -4,10 +4,18 @@ "reportVersion": "v1", "issue": "pikasTech/HWLAB#35", "taskId": "dev-artifact-publish", - "commitId": "7e29522", + "commitId": "7de6edd", "acceptanceLevel": "dev_artifact_publish", "devOnly": true, "prodDisabled": true, + "reportLifecycle": { + "version": "v1", + "state": "active", + "activeEndpoint": "http://74.48.78.17:16667", + "activeBrowserEndpoint": "http://74.48.78.17:16666", + "deprecatedEndpoint": null, + "summary": "Current DEV artifact publish report; it is not a DEV-LIVE runtime substitute." + }, "sourceContract": { "status": "pass", "documents": [ @@ -67,12 +75,12 @@ "status": "published", "mode": "publish", "repo": "pikasTech/HWLAB", - "sourceCommitId": "7e29522b65c8a316b7c3fde12bebcb5f6baf8c33", + "sourceCommitId": "7de6edd2c41fb50dcb007353780338be8832b27e", "registryPrefix": "127.0.0.1:5000/hwlab", "registryCapabilities": { "version": "v1", "registryPrefix": "127.0.0.1:5000/hwlab", - "generatedAt": "2026-05-22T05:06:03.750Z", + "generatedAt": "2026-05-22T23:50:08.588Z", "classification": "degraded", "dimensions": { "processHttpAccess": { @@ -120,7 +128,7 @@ "names": "unidesk-artifact-registry", "ports": "127.0.0.1:5000->5000/tcp", "state": "running", - "status": "Up 28 hours" + "status": "Up 46 hours" } ], "pushAttempted": false, @@ -180,16 +188,16 @@ "imageID": "127.0.0.1:5000/hwlab/hwlab-box-simu@sha256:ae5fcc06a276918561c2d752f2221156bd2bd4db7fb93967ae76af97bfdc51bf" }, { - "pod": "hwlab-cloud-api-f48dcdfb-9n6zh", + "pod": "hwlab-cloud-api-6f456ff979-z4mnw", "container": "hwlab-cloud-api", - "image": "127.0.0.1:5000/hwlab/hwlab-cloud-api:cb35ada", - "imageID": "127.0.0.1:5000/hwlab/hwlab-cloud-api@sha256:3946efdd7360409cea6a897cb03a6f3172f14819d3132df3aab821621909513f" + "image": "127.0.0.1:5000/hwlab/hwlab-cloud-api:c7de474", + "imageID": "127.0.0.1:5000/hwlab/hwlab-cloud-api@sha256:86fe92c0dd5d5883851b38805e6f5acc49d2876552599c18f85480cf0d3bf981" }, { - "pod": "hwlab-cloud-web-cd9655b98-gxtmc", + "pod": "hwlab-cloud-web-7d48b84f4b-n6hw6", "container": "hwlab-cloud-web", - "image": "127.0.0.1:5000/hwlab/hwlab-cloud-web:cb35ada", - "imageID": "127.0.0.1:5000/hwlab/hwlab-cloud-web@sha256:868e2a11c56cc1a27c77de3fa71a7b092f21ae98a4052104e9071bd93960abfa" + "image": "127.0.0.1:5000/hwlab/hwlab-cloud-web:c7de474", + "imageID": "127.0.0.1:5000/hwlab/hwlab-cloud-web@sha256:91cfacc1fc011a96bb47ff00d2ab09ee3c93003b7ec482308ec5ac35004e5627" }, { "pod": "hwlab-edge-proxy-567f978cdd-8fwc8", @@ -504,13 +512,13 @@ "publishPlan": { "version": "v2", "mode": "publish", - "sourceCommitId": "7e29522b65c8a316b7c3fde12bebcb5f6baf8c33", - "imageTag": "7e29522", + "sourceCommitId": "7de6edd2c41fb50dcb007353780338be8832b27e", + "imageTag": "7de6edd", "registryTarget": "127.0.0.1:5000/hwlab", "registryCapabilities": { "version": "v1", "registryPrefix": "127.0.0.1:5000/hwlab", - "generatedAt": "2026-05-22T05:06:03.750Z", + "generatedAt": "2026-05-22T23:50:08.588Z", "classification": "degraded", "dimensions": { "processHttpAccess": { @@ -558,7 +566,7 @@ "names": "unidesk-artifact-registry", "ports": "127.0.0.1:5000->5000/tcp", "state": "running", - "status": "Up 28 hours" + "status": "Up 46 hours" } ], "pushAttempted": false, @@ -618,16 +626,16 @@ "imageID": "127.0.0.1:5000/hwlab/hwlab-box-simu@sha256:ae5fcc06a276918561c2d752f2221156bd2bd4db7fb93967ae76af97bfdc51bf" }, { - "pod": "hwlab-cloud-api-f48dcdfb-9n6zh", + "pod": "hwlab-cloud-api-6f456ff979-z4mnw", "container": "hwlab-cloud-api", - "image": "127.0.0.1:5000/hwlab/hwlab-cloud-api:cb35ada", - "imageID": "127.0.0.1:5000/hwlab/hwlab-cloud-api@sha256:3946efdd7360409cea6a897cb03a6f3172f14819d3132df3aab821621909513f" + "image": "127.0.0.1:5000/hwlab/hwlab-cloud-api:c7de474", + "imageID": "127.0.0.1:5000/hwlab/hwlab-cloud-api@sha256:86fe92c0dd5d5883851b38805e6f5acc49d2876552599c18f85480cf0d3bf981" }, { - "pod": "hwlab-cloud-web-cd9655b98-gxtmc", + "pod": "hwlab-cloud-web-7d48b84f4b-n6hw6", "container": "hwlab-cloud-web", - "image": "127.0.0.1:5000/hwlab/hwlab-cloud-web:cb35ada", - "imageID": "127.0.0.1:5000/hwlab/hwlab-cloud-web@sha256:868e2a11c56cc1a27c77de3fa71a7b092f21ae98a4052104e9071bd93960abfa" + "image": "127.0.0.1:5000/hwlab/hwlab-cloud-web:c7de474", + "imageID": "127.0.0.1:5000/hwlab/hwlab-cloud-web@sha256:91cfacc1fc011a96bb47ff00d2ab09ee3c93003b7ec482308ec5ac35004e5627" }, { "pod": "hwlab-edge-proxy-567f978cdd-8fwc8", @@ -691,12 +699,12 @@ "enabled": true, "required": true, "artifactScope": "required", - "sourceCommitId": "7e29522b65c8a316b7c3fde12bebcb5f6baf8c33", + "sourceCommitId": "7de6edd2c41fb50dcb007353780338be8832b27e", "registryTarget": "127.0.0.1:5000/hwlab/hwlab-cloud-api", - "image": "127.0.0.1:5000/hwlab/hwlab-cloud-api:7e29522", - "imageTag": "7e29522", - "digest": "sha256:090b6f919be3b3c7594ca4073b193351689fc525f478b64d54d393725cb01ecf", - "repositoryDigest": "127.0.0.1:5000/hwlab/hwlab-cloud-api@sha256:090b6f919be3b3c7594ca4073b193351689fc525f478b64d54d393725cb01ecf", + "image": "127.0.0.1:5000/hwlab/hwlab-cloud-api:7de6edd", + "imageTag": "7de6edd", + "digest": "sha256:8a0120e976f8369c19887d33d004b763c7dbff3f43fd023fb186abffe199b3ea", + "repositoryDigest": "127.0.0.1:5000/hwlab/hwlab-cloud-api@sha256:8a0120e976f8369c19887d33d004b763c7dbff3f43fd023fb186abffe199b3ea", "digestStatus": "real", "status": "published", "notPublishedReason": null @@ -706,12 +714,12 @@ "enabled": true, "required": true, "artifactScope": "required", - "sourceCommitId": "7e29522b65c8a316b7c3fde12bebcb5f6baf8c33", + "sourceCommitId": "7de6edd2c41fb50dcb007353780338be8832b27e", "registryTarget": "127.0.0.1:5000/hwlab/hwlab-cloud-web", - "image": "127.0.0.1:5000/hwlab/hwlab-cloud-web:7e29522", - "imageTag": "7e29522", - "digest": "sha256:bc6e836b2bb796b30562ed3ae93d8534146a3b74a310906481c8641646d1b8f0", - "repositoryDigest": "127.0.0.1:5000/hwlab/hwlab-cloud-web@sha256:bc6e836b2bb796b30562ed3ae93d8534146a3b74a310906481c8641646d1b8f0", + "image": "127.0.0.1:5000/hwlab/hwlab-cloud-web:7de6edd", + "imageTag": "7de6edd", + "digest": "sha256:a302a8b4f3c6e7a91e5046398b803e9915dba873cefac97bb7069886b5a48d61", + "repositoryDigest": "127.0.0.1:5000/hwlab/hwlab-cloud-web@sha256:a302a8b4f3c6e7a91e5046398b803e9915dba873cefac97bb7069886b5a48d61", "digestStatus": "real", "status": "published", "notPublishedReason": null @@ -721,12 +729,12 @@ "enabled": true, "required": true, "artifactScope": "required", - "sourceCommitId": "7e29522b65c8a316b7c3fde12bebcb5f6baf8c33", + "sourceCommitId": "7de6edd2c41fb50dcb007353780338be8832b27e", "registryTarget": "127.0.0.1:5000/hwlab/hwlab-agent-mgr", - "image": "127.0.0.1:5000/hwlab/hwlab-agent-mgr:7e29522", - "imageTag": "7e29522", - "digest": "sha256:4d9b8944bc52012bb0a4a3a345f8939381d2804032e544d0c98f49fac0e46bfd", - "repositoryDigest": "127.0.0.1:5000/hwlab/hwlab-agent-mgr@sha256:4d9b8944bc52012bb0a4a3a345f8939381d2804032e544d0c98f49fac0e46bfd", + "image": "127.0.0.1:5000/hwlab/hwlab-agent-mgr:7de6edd", + "imageTag": "7de6edd", + "digest": "sha256:a16bba1762f58e4daed7ef94243e3f4f0522332704c9f40bcadab77f11acc7a2", + "repositoryDigest": "127.0.0.1:5000/hwlab/hwlab-agent-mgr@sha256:a16bba1762f58e4daed7ef94243e3f4f0522332704c9f40bcadab77f11acc7a2", "digestStatus": "real", "status": "published", "notPublishedReason": null @@ -736,12 +744,12 @@ "enabled": true, "required": true, "artifactScope": "required", - "sourceCommitId": "7e29522b65c8a316b7c3fde12bebcb5f6baf8c33", + "sourceCommitId": "7de6edd2c41fb50dcb007353780338be8832b27e", "registryTarget": "127.0.0.1:5000/hwlab/hwlab-agent-worker", - "image": "127.0.0.1:5000/hwlab/hwlab-agent-worker:7e29522", - "imageTag": "7e29522", - "digest": "sha256:2582176e2c35a2bfbce4edfd922749397d45f6f1f8c04d0394c501f7d87323ee", - "repositoryDigest": "127.0.0.1:5000/hwlab/hwlab-agent-worker@sha256:2582176e2c35a2bfbce4edfd922749397d45f6f1f8c04d0394c501f7d87323ee", + "image": "127.0.0.1:5000/hwlab/hwlab-agent-worker:7de6edd", + "imageTag": "7de6edd", + "digest": "sha256:3c75cb9d6c2b7392749d972c78f9b7a89e4f099a64f902d2eb9810f16d551ceb", + "repositoryDigest": "127.0.0.1:5000/hwlab/hwlab-agent-worker@sha256:3c75cb9d6c2b7392749d972c78f9b7a89e4f099a64f902d2eb9810f16d551ceb", "digestStatus": "real", "status": "published", "notPublishedReason": null @@ -751,12 +759,12 @@ "enabled": true, "required": true, "artifactScope": "required", - "sourceCommitId": "7e29522b65c8a316b7c3fde12bebcb5f6baf8c33", + "sourceCommitId": "7de6edd2c41fb50dcb007353780338be8832b27e", "registryTarget": "127.0.0.1:5000/hwlab/hwlab-gateway", - "image": "127.0.0.1:5000/hwlab/hwlab-gateway:7e29522", - "imageTag": "7e29522", - "digest": "sha256:290341fd6e6f036aa953943072ad58e0d0cfcc0e13950e6090f941b3310755a6", - "repositoryDigest": "127.0.0.1:5000/hwlab/hwlab-gateway@sha256:290341fd6e6f036aa953943072ad58e0d0cfcc0e13950e6090f941b3310755a6", + "image": "127.0.0.1:5000/hwlab/hwlab-gateway:7de6edd", + "imageTag": "7de6edd", + "digest": "sha256:b5374c763d54628c2e81b86c93c826a27629a8546ae789223e0553ca7c8ab80a", + "repositoryDigest": "127.0.0.1:5000/hwlab/hwlab-gateway@sha256:b5374c763d54628c2e81b86c93c826a27629a8546ae789223e0553ca7c8ab80a", "digestStatus": "real", "status": "published", "notPublishedReason": null @@ -766,12 +774,12 @@ "enabled": true, "required": true, "artifactScope": "required", - "sourceCommitId": "7e29522b65c8a316b7c3fde12bebcb5f6baf8c33", + "sourceCommitId": "7de6edd2c41fb50dcb007353780338be8832b27e", "registryTarget": "127.0.0.1:5000/hwlab/hwlab-gateway-simu", - "image": "127.0.0.1:5000/hwlab/hwlab-gateway-simu:7e29522", - "imageTag": "7e29522", - "digest": "sha256:02627f880c7ddf2102e2255a43097d1f604cfb7a22215736e328287e27fc5f03", - "repositoryDigest": "127.0.0.1:5000/hwlab/hwlab-gateway-simu@sha256:02627f880c7ddf2102e2255a43097d1f604cfb7a22215736e328287e27fc5f03", + "image": "127.0.0.1:5000/hwlab/hwlab-gateway-simu:7de6edd", + "imageTag": "7de6edd", + "digest": "sha256:be6aff770319c6c2b45f7b5974d4fb7aae4aab79a6670b1d8b87e194387e30dd", + "repositoryDigest": "127.0.0.1:5000/hwlab/hwlab-gateway-simu@sha256:be6aff770319c6c2b45f7b5974d4fb7aae4aab79a6670b1d8b87e194387e30dd", "digestStatus": "real", "status": "published", "notPublishedReason": null @@ -781,12 +789,12 @@ "enabled": true, "required": true, "artifactScope": "required", - "sourceCommitId": "7e29522b65c8a316b7c3fde12bebcb5f6baf8c33", + "sourceCommitId": "7de6edd2c41fb50dcb007353780338be8832b27e", "registryTarget": "127.0.0.1:5000/hwlab/hwlab-box-simu", - "image": "127.0.0.1:5000/hwlab/hwlab-box-simu:7e29522", - "imageTag": "7e29522", - "digest": "sha256:e02c270c71f83a2f4624722bb84616bea8374ef43439f27bdce310e4baa8dcca", - "repositoryDigest": "127.0.0.1:5000/hwlab/hwlab-box-simu@sha256:e02c270c71f83a2f4624722bb84616bea8374ef43439f27bdce310e4baa8dcca", + "image": "127.0.0.1:5000/hwlab/hwlab-box-simu:7de6edd", + "imageTag": "7de6edd", + "digest": "sha256:54e77f4c2ea9e87fd16becde9a5fe05b935f2472dba443458257dfdda1e87c27", + "repositoryDigest": "127.0.0.1:5000/hwlab/hwlab-box-simu@sha256:54e77f4c2ea9e87fd16becde9a5fe05b935f2472dba443458257dfdda1e87c27", "digestStatus": "real", "status": "published", "notPublishedReason": null @@ -796,12 +804,12 @@ "enabled": true, "required": true, "artifactScope": "required", - "sourceCommitId": "7e29522b65c8a316b7c3fde12bebcb5f6baf8c33", + "sourceCommitId": "7de6edd2c41fb50dcb007353780338be8832b27e", "registryTarget": "127.0.0.1:5000/hwlab/hwlab-patch-panel", - "image": "127.0.0.1:5000/hwlab/hwlab-patch-panel:7e29522", - "imageTag": "7e29522", - "digest": "sha256:f730323f83c62797f382932582a05df921045c86383dad7951f3d639b32456a9", - "repositoryDigest": "127.0.0.1:5000/hwlab/hwlab-patch-panel@sha256:f730323f83c62797f382932582a05df921045c86383dad7951f3d639b32456a9", + "image": "127.0.0.1:5000/hwlab/hwlab-patch-panel:7de6edd", + "imageTag": "7de6edd", + "digest": "sha256:02bec561d5f08f850e2884a2098da72978ad319d5bd799704ad9650778f11ae2", + "repositoryDigest": "127.0.0.1:5000/hwlab/hwlab-patch-panel@sha256:02bec561d5f08f850e2884a2098da72978ad319d5bd799704ad9650778f11ae2", "digestStatus": "real", "status": "published", "notPublishedReason": null @@ -811,12 +819,12 @@ "enabled": true, "required": true, "artifactScope": "required", - "sourceCommitId": "7e29522b65c8a316b7c3fde12bebcb5f6baf8c33", + "sourceCommitId": "7de6edd2c41fb50dcb007353780338be8832b27e", "registryTarget": "127.0.0.1:5000/hwlab/hwlab-router", - "image": "127.0.0.1:5000/hwlab/hwlab-router:7e29522", - "imageTag": "7e29522", - "digest": "sha256:7c40c573078a9c325402bd47b2eb78a46c0c80564a228cf7c9fcf0cfba5bc6d2", - "repositoryDigest": "127.0.0.1:5000/hwlab/hwlab-router@sha256:7c40c573078a9c325402bd47b2eb78a46c0c80564a228cf7c9fcf0cfba5bc6d2", + "image": "127.0.0.1:5000/hwlab/hwlab-router:7de6edd", + "imageTag": "7de6edd", + "digest": "sha256:bb3b10c486bb1305f4cae7ec2751947eeb0cc60c9993d54e93802b5df3b13fb6", + "repositoryDigest": "127.0.0.1:5000/hwlab/hwlab-router@sha256:bb3b10c486bb1305f4cae7ec2751947eeb0cc60c9993d54e93802b5df3b13fb6", "digestStatus": "real", "status": "published", "notPublishedReason": null @@ -826,12 +834,12 @@ "enabled": true, "required": true, "artifactScope": "required", - "sourceCommitId": "7e29522b65c8a316b7c3fde12bebcb5f6baf8c33", + "sourceCommitId": "7de6edd2c41fb50dcb007353780338be8832b27e", "registryTarget": "127.0.0.1:5000/hwlab/hwlab-tunnel-client", - "image": "127.0.0.1:5000/hwlab/hwlab-tunnel-client:7e29522", - "imageTag": "7e29522", - "digest": "sha256:b141dc88557b8f6391aa082fdb37c6f0db5bc3a76c97bb39ba00354a9208abd8", - "repositoryDigest": "127.0.0.1:5000/hwlab/hwlab-tunnel-client@sha256:b141dc88557b8f6391aa082fdb37c6f0db5bc3a76c97bb39ba00354a9208abd8", + "image": "127.0.0.1:5000/hwlab/hwlab-tunnel-client:7de6edd", + "imageTag": "7de6edd", + "digest": "sha256:ce9fa92362dd10911dcd66c59412690ccde401ce4ef82b548cfcea37499a725f", + "repositoryDigest": "127.0.0.1:5000/hwlab/hwlab-tunnel-client@sha256:ce9fa92362dd10911dcd66c59412690ccde401ce4ef82b548cfcea37499a725f", "digestStatus": "real", "status": "published", "notPublishedReason": null @@ -841,12 +849,12 @@ "enabled": true, "required": true, "artifactScope": "required", - "sourceCommitId": "7e29522b65c8a316b7c3fde12bebcb5f6baf8c33", + "sourceCommitId": "7de6edd2c41fb50dcb007353780338be8832b27e", "registryTarget": "127.0.0.1:5000/hwlab/hwlab-edge-proxy", - "image": "127.0.0.1:5000/hwlab/hwlab-edge-proxy:7e29522", - "imageTag": "7e29522", - "digest": "sha256:792505139793c3f3da7769f9dc9d1cb3203ff92797305b62e8f12207c69a9831", - "repositoryDigest": "127.0.0.1:5000/hwlab/hwlab-edge-proxy@sha256:792505139793c3f3da7769f9dc9d1cb3203ff92797305b62e8f12207c69a9831", + "image": "127.0.0.1:5000/hwlab/hwlab-edge-proxy:7de6edd", + "imageTag": "7de6edd", + "digest": "sha256:bf19f6812cbac3c54c938ad12a2b1ef9626a746017f85658b9960a1761afa32c", + "repositoryDigest": "127.0.0.1:5000/hwlab/hwlab-edge-proxy@sha256:bf19f6812cbac3c54c938ad12a2b1ef9626a746017f85658b9960a1761afa32c", "digestStatus": "real", "status": "published", "notPublishedReason": null @@ -856,12 +864,12 @@ "enabled": true, "required": true, "artifactScope": "required", - "sourceCommitId": "7e29522b65c8a316b7c3fde12bebcb5f6baf8c33", + "sourceCommitId": "7de6edd2c41fb50dcb007353780338be8832b27e", "registryTarget": "127.0.0.1:5000/hwlab/hwlab-cli", - "image": "127.0.0.1:5000/hwlab/hwlab-cli:7e29522", - "imageTag": "7e29522", - "digest": "sha256:43d1c175091bfb462eddd7dd22a780d6485d86bdb052c36b78201606f48fadc1", - "repositoryDigest": "127.0.0.1:5000/hwlab/hwlab-cli@sha256:43d1c175091bfb462eddd7dd22a780d6485d86bdb052c36b78201606f48fadc1", + "image": "127.0.0.1:5000/hwlab/hwlab-cli:7de6edd", + "imageTag": "7de6edd", + "digest": "sha256:b169c015c4c06dcdf6d43131d69dd72be1996cb5970e25014c4cec0271b459c0", + "repositoryDigest": "127.0.0.1:5000/hwlab/hwlab-cli@sha256:b169c015c4c06dcdf6d43131d69dd72be1996cb5970e25014c4cec0271b459c0", "digestStatus": "real", "status": "published", "notPublishedReason": null @@ -871,12 +879,12 @@ "enabled": true, "required": true, "artifactScope": "required", - "sourceCommitId": "7e29522b65c8a316b7c3fde12bebcb5f6baf8c33", + "sourceCommitId": "7de6edd2c41fb50dcb007353780338be8832b27e", "registryTarget": "127.0.0.1:5000/hwlab/hwlab-agent-skills", - "image": "127.0.0.1:5000/hwlab/hwlab-agent-skills:7e29522", - "imageTag": "7e29522", - "digest": "sha256:c75510038dc33196dc254472e78101d545c0d777a7b33b531f02b39faf2588b5", - "repositoryDigest": "127.0.0.1:5000/hwlab/hwlab-agent-skills@sha256:c75510038dc33196dc254472e78101d545c0d777a7b33b531f02b39faf2588b5", + "image": "127.0.0.1:5000/hwlab/hwlab-agent-skills:7de6edd", + "imageTag": "7de6edd", + "digest": "sha256:7d1b6871763613bf7c6e37f5b05b1b49e2c367b4b0b94abfbb9bceb7ab5de4ed", + "repositoryDigest": "127.0.0.1:5000/hwlab/hwlab-agent-skills@sha256:7d1b6871763613bf7c6e37f5b05b1b49e2c367b4b0b94abfbb9bceb7ab5de4ed", "digestStatus": "real", "status": "published", "notPublishedReason": null @@ -888,15 +896,15 @@ "disabledServiceCount": 0, "builtCount": 13, "publishedCount": 13, - "generatedAt": "2026-05-22T05:06:57.139Z", + "generatedAt": "2026-05-22T23:51:56.882Z", "services": [ { "serviceId": "hwlab-cloud-api", "status": "published", - "image": "127.0.0.1:5000/hwlab/hwlab-cloud-api:7e29522", - "imageTag": "7e29522", - "digest": "sha256:090b6f919be3b3c7594ca4073b193351689fc525f478b64d54d393725cb01ecf", - "repositoryDigest": "127.0.0.1:5000/hwlab/hwlab-cloud-api@sha256:090b6f919be3b3c7594ca4073b193351689fc525f478b64d54d393725cb01ecf", + "image": "127.0.0.1:5000/hwlab/hwlab-cloud-api:7de6edd", + "imageTag": "7de6edd", + "digest": "sha256:8a0120e976f8369c19887d33d004b763c7dbff3f43fd023fb186abffe199b3ea", + "repositoryDigest": "127.0.0.1:5000/hwlab/hwlab-cloud-api@sha256:8a0120e976f8369c19887d33d004b763c7dbff3f43fd023fb186abffe199b3ea", "runtimeKind": "node-command", "implementationState": "repo-entrypoint", "sourceState": "source-present", @@ -905,16 +913,102 @@ "artifactRequired": true, "artifactScope": "required", "notPublishedReason": null, - "localImageId": "sha256:517ecf1866b4876c0f99e9c938c4954662c72e65f7885b027f8248979c8c29b3" + "localImageId": "sha256:ae5cc610383beaba95f35c1a2d49bb8c008c427a7acb337d369d98ce3ba4494f" }, { "serviceId": "hwlab-cloud-web", "status": "published", - "image": "127.0.0.1:5000/hwlab/hwlab-cloud-web:7e29522", - "imageTag": "7e29522", - "digest": "sha256:bc6e836b2bb796b30562ed3ae93d8534146a3b74a310906481c8641646d1b8f0", - "repositoryDigest": "127.0.0.1:5000/hwlab/hwlab-cloud-web@sha256:bc6e836b2bb796b30562ed3ae93d8534146a3b74a310906481c8641646d1b8f0", + "image": "127.0.0.1:5000/hwlab/hwlab-cloud-web:7de6edd", + "imageTag": "7de6edd", + "digest": "sha256:a302a8b4f3c6e7a91e5046398b803e9915dba873cefac97bb7069886b5a48d61", + "repositoryDigest": "127.0.0.1:5000/hwlab/hwlab-cloud-web@sha256:a302a8b4f3c6e7a91e5046398b803e9915dba873cefac97bb7069886b5a48d61", "runtimeKind": "cloud-web", + "distFreshness": { + "status": "pass", + "distPath": "web/hwlab-cloud-web/dist", + "buildCommand": "node web/hwlab-cloud-web/scripts/build.mjs", + "freshnessCommand": "node web/hwlab-cloud-web/scripts/build.mjs", + "files": [ + { + "kind": "runtime", + "path": "index.html", + "sourcePath": "/workspace/hwlab/.worktrees/dc-dcsn-p0-2026-003-publish-7de6edd/web/hwlab-cloud-web/index.html", + "distPath": "/workspace/hwlab/.worktrees/dc-dcsn-p0-2026-003-publish-7de6edd/web/hwlab-cloud-web/dist/index.html", + "status": "match" + }, + { + "kind": "runtime", + "path": "styles.css", + "sourcePath": "/workspace/hwlab/.worktrees/dc-dcsn-p0-2026-003-publish-7de6edd/web/hwlab-cloud-web/styles.css", + "distPath": "/workspace/hwlab/.worktrees/dc-dcsn-p0-2026-003-publish-7de6edd/web/hwlab-cloud-web/dist/styles.css", + "status": "match" + }, + { + "kind": "runtime", + "path": "app.mjs", + "sourcePath": "/workspace/hwlab/.worktrees/dc-dcsn-p0-2026-003-publish-7de6edd/web/hwlab-cloud-web/app.mjs", + "distPath": "/workspace/hwlab/.worktrees/dc-dcsn-p0-2026-003-publish-7de6edd/web/hwlab-cloud-web/dist/app.mjs", + "status": "match" + }, + { + "kind": "runtime", + "path": "gate-summary.mjs", + "sourcePath": "/workspace/hwlab/.worktrees/dc-dcsn-p0-2026-003-publish-7de6edd/web/hwlab-cloud-web/gate-summary.mjs", + "distPath": "/workspace/hwlab/.worktrees/dc-dcsn-p0-2026-003-publish-7de6edd/web/hwlab-cloud-web/dist/gate-summary.mjs", + "status": "match" + }, + { + "kind": "runtime", + "path": "runtime.mjs", + "sourcePath": "/workspace/hwlab/.worktrees/dc-dcsn-p0-2026-003-publish-7de6edd/web/hwlab-cloud-web/runtime.mjs", + "distPath": "/workspace/hwlab/.worktrees/dc-dcsn-p0-2026-003-publish-7de6edd/web/hwlab-cloud-web/dist/runtime.mjs", + "status": "match" + }, + { + "kind": "runtime", + "path": "workbench-hardware-panel.mjs", + "sourcePath": "/workspace/hwlab/.worktrees/dc-dcsn-p0-2026-003-publish-7de6edd/web/hwlab-cloud-web/workbench-hardware-panel.mjs", + "distPath": "/workspace/hwlab/.worktrees/dc-dcsn-p0-2026-003-publish-7de6edd/web/hwlab-cloud-web/dist/workbench-hardware-panel.mjs", + "status": "match" + }, + { + "kind": "runtime", + "path": "help.md", + "sourcePath": "/workspace/hwlab/.worktrees/dc-dcsn-p0-2026-003-publish-7de6edd/web/hwlab-cloud-web/help.md", + "distPath": "/workspace/hwlab/.worktrees/dc-dcsn-p0-2026-003-publish-7de6edd/web/hwlab-cloud-web/dist/help.md", + "status": "match" + }, + { + "kind": "runtime", + "path": "third_party/marked/marked.esm.js", + "sourcePath": "/workspace/hwlab/.worktrees/dc-dcsn-p0-2026-003-publish-7de6edd/web/hwlab-cloud-web/third_party/marked/marked.esm.js", + "distPath": "/workspace/hwlab/.worktrees/dc-dcsn-p0-2026-003-publish-7de6edd/web/hwlab-cloud-web/dist/third_party/marked/marked.esm.js", + "status": "match" + }, + { + "kind": "runtime", + "path": "third_party/marked/LICENSE", + "sourcePath": "/workspace/hwlab/.worktrees/dc-dcsn-p0-2026-003-publish-7de6edd/web/hwlab-cloud-web/third_party/marked/LICENSE", + "distPath": "/workspace/hwlab/.worktrees/dc-dcsn-p0-2026-003-publish-7de6edd/web/hwlab-cloud-web/dist/third_party/marked/LICENSE", + "status": "match" + }, + { + "kind": "alias", + "path": "gate/index.html", + "sourcePath": "/workspace/hwlab/.worktrees/dc-dcsn-p0-2026-003-publish-7de6edd/web/hwlab-cloud-web/index.html", + "distPath": "/workspace/hwlab/.worktrees/dc-dcsn-p0-2026-003-publish-7de6edd/web/hwlab-cloud-web/dist/gate/index.html", + "status": "match" + }, + { + "kind": "alias", + "path": "diagnostics/gate/index.html", + "sourcePath": "/workspace/hwlab/.worktrees/dc-dcsn-p0-2026-003-publish-7de6edd/web/hwlab-cloud-web/index.html", + "distPath": "/workspace/hwlab/.worktrees/dc-dcsn-p0-2026-003-publish-7de6edd/web/hwlab-cloud-web/dist/diagnostics/gate/index.html", + "status": "match" + } + ], + "mismatches": [] + }, "implementationState": "static-web-wrapper", "sourceState": "source-present", "entrypoint": "web/hwlab-cloud-web/index.html", @@ -922,15 +1016,15 @@ "artifactRequired": true, "artifactScope": "required", "notPublishedReason": null, - "localImageId": "sha256:6cd8af9f8012f5814ad9e985a43d16865750beb36e4c7a2fc14f92895b4f545c" + "localImageId": "sha256:72114b552125d915ac6959a4a0cd85c3821a32a351cce55289d2fdecc39cffec" }, { "serviceId": "hwlab-agent-mgr", "status": "published", - "image": "127.0.0.1:5000/hwlab/hwlab-agent-mgr:7e29522", - "imageTag": "7e29522", - "digest": "sha256:4d9b8944bc52012bb0a4a3a345f8939381d2804032e544d0c98f49fac0e46bfd", - "repositoryDigest": "127.0.0.1:5000/hwlab/hwlab-agent-mgr@sha256:4d9b8944bc52012bb0a4a3a345f8939381d2804032e544d0c98f49fac0e46bfd", + "image": "127.0.0.1:5000/hwlab/hwlab-agent-mgr:7de6edd", + "imageTag": "7de6edd", + "digest": "sha256:a16bba1762f58e4daed7ef94243e3f4f0522332704c9f40bcadab77f11acc7a2", + "repositoryDigest": "127.0.0.1:5000/hwlab/hwlab-agent-mgr@sha256:a16bba1762f58e4daed7ef94243e3f4f0522332704c9f40bcadab77f11acc7a2", "runtimeKind": "node-command", "implementationState": "repo-entrypoint", "sourceState": "source-present", @@ -939,15 +1033,15 @@ "artifactRequired": true, "artifactScope": "required", "notPublishedReason": null, - "localImageId": "sha256:23020dc829869b4f69c3b87760ea18b10c63145e86db15e532396d7c85b6ceaa" + "localImageId": "sha256:0f9c17d6ee0da642f665b0526ae7fda0f9c882908f3f9d07eb48d836d6cd9016" }, { "serviceId": "hwlab-agent-worker", "status": "published", - "image": "127.0.0.1:5000/hwlab/hwlab-agent-worker:7e29522", - "imageTag": "7e29522", - "digest": "sha256:2582176e2c35a2bfbce4edfd922749397d45f6f1f8c04d0394c501f7d87323ee", - "repositoryDigest": "127.0.0.1:5000/hwlab/hwlab-agent-worker@sha256:2582176e2c35a2bfbce4edfd922749397d45f6f1f8c04d0394c501f7d87323ee", + "image": "127.0.0.1:5000/hwlab/hwlab-agent-worker:7de6edd", + "imageTag": "7de6edd", + "digest": "sha256:3c75cb9d6c2b7392749d972c78f9b7a89e4f099a64f902d2eb9810f16d551ceb", + "repositoryDigest": "127.0.0.1:5000/hwlab/hwlab-agent-worker@sha256:3c75cb9d6c2b7392749d972c78f9b7a89e4f099a64f902d2eb9810f16d551ceb", "runtimeKind": "node-command", "implementationState": "repo-entrypoint", "sourceState": "source-present", @@ -956,15 +1050,15 @@ "artifactRequired": true, "artifactScope": "required", "notPublishedReason": null, - "localImageId": "sha256:15eaf89bd880d5396efffbbee112e9392c6ad1ef15ccedd52ef9b49811020cd5" + "localImageId": "sha256:373bbbe01b5ab6dae41280b23841472c3ad7c34f31d080e930c6c78b2d1d7931" }, { "serviceId": "hwlab-gateway", "status": "published", - "image": "127.0.0.1:5000/hwlab/hwlab-gateway:7e29522", - "imageTag": "7e29522", - "digest": "sha256:290341fd6e6f036aa953943072ad58e0d0cfcc0e13950e6090f941b3310755a6", - "repositoryDigest": "127.0.0.1:5000/hwlab/hwlab-gateway@sha256:290341fd6e6f036aa953943072ad58e0d0cfcc0e13950e6090f941b3310755a6", + "image": "127.0.0.1:5000/hwlab/hwlab-gateway:7de6edd", + "imageTag": "7de6edd", + "digest": "sha256:b5374c763d54628c2e81b86c93c826a27629a8546ae789223e0553ca7c8ab80a", + "repositoryDigest": "127.0.0.1:5000/hwlab/hwlab-gateway@sha256:b5374c763d54628c2e81b86c93c826a27629a8546ae789223e0553ca7c8ab80a", "runtimeKind": "node-command", "implementationState": "repo-entrypoint", "sourceState": "source-present", @@ -973,15 +1067,15 @@ "artifactRequired": true, "artifactScope": "required", "notPublishedReason": null, - "localImageId": "sha256:3438aa4c6ad9a0d9ca91bf8112e0fd6889d2259550c7feaa0b0c6c68455ef3ed" + "localImageId": "sha256:f3715273de17f900530de81b7230d7e6f29edd152aee28ad2d7439e01c3c21af" }, { "serviceId": "hwlab-gateway-simu", "status": "published", - "image": "127.0.0.1:5000/hwlab/hwlab-gateway-simu:7e29522", - "imageTag": "7e29522", - "digest": "sha256:02627f880c7ddf2102e2255a43097d1f604cfb7a22215736e328287e27fc5f03", - "repositoryDigest": "127.0.0.1:5000/hwlab/hwlab-gateway-simu@sha256:02627f880c7ddf2102e2255a43097d1f604cfb7a22215736e328287e27fc5f03", + "image": "127.0.0.1:5000/hwlab/hwlab-gateway-simu:7de6edd", + "imageTag": "7de6edd", + "digest": "sha256:be6aff770319c6c2b45f7b5974d4fb7aae4aab79a6670b1d8b87e194387e30dd", + "repositoryDigest": "127.0.0.1:5000/hwlab/hwlab-gateway-simu@sha256:be6aff770319c6c2b45f7b5974d4fb7aae4aab79a6670b1d8b87e194387e30dd", "runtimeKind": "node-command", "implementationState": "repo-entrypoint", "sourceState": "source-present", @@ -990,15 +1084,15 @@ "artifactRequired": true, "artifactScope": "required", "notPublishedReason": null, - "localImageId": "sha256:7747b26033273379d2f1fc639e9f76db6cb805c9c11760b0ebbc1971c9886459" + "localImageId": "sha256:846265260eee93bfb167b686dd0ba26a9618bff215e88ba12e816668c62b3fd6" }, { "serviceId": "hwlab-box-simu", "status": "published", - "image": "127.0.0.1:5000/hwlab/hwlab-box-simu:7e29522", - "imageTag": "7e29522", - "digest": "sha256:e02c270c71f83a2f4624722bb84616bea8374ef43439f27bdce310e4baa8dcca", - "repositoryDigest": "127.0.0.1:5000/hwlab/hwlab-box-simu@sha256:e02c270c71f83a2f4624722bb84616bea8374ef43439f27bdce310e4baa8dcca", + "image": "127.0.0.1:5000/hwlab/hwlab-box-simu:7de6edd", + "imageTag": "7de6edd", + "digest": "sha256:54e77f4c2ea9e87fd16becde9a5fe05b935f2472dba443458257dfdda1e87c27", + "repositoryDigest": "127.0.0.1:5000/hwlab/hwlab-box-simu@sha256:54e77f4c2ea9e87fd16becde9a5fe05b935f2472dba443458257dfdda1e87c27", "runtimeKind": "node-command", "implementationState": "repo-entrypoint", "sourceState": "source-present", @@ -1007,15 +1101,15 @@ "artifactRequired": true, "artifactScope": "required", "notPublishedReason": null, - "localImageId": "sha256:daba9e3fb75f3e53e8824793cc2c1b7df0747b74c64e93ad92a748e8c9cba079" + "localImageId": "sha256:4ead52d214856f351aada9e97a17c8c1cebd273af367202dc458fe5b3eada134" }, { "serviceId": "hwlab-patch-panel", "status": "published", - "image": "127.0.0.1:5000/hwlab/hwlab-patch-panel:7e29522", - "imageTag": "7e29522", - "digest": "sha256:f730323f83c62797f382932582a05df921045c86383dad7951f3d639b32456a9", - "repositoryDigest": "127.0.0.1:5000/hwlab/hwlab-patch-panel@sha256:f730323f83c62797f382932582a05df921045c86383dad7951f3d639b32456a9", + "image": "127.0.0.1:5000/hwlab/hwlab-patch-panel:7de6edd", + "imageTag": "7de6edd", + "digest": "sha256:02bec561d5f08f850e2884a2098da72978ad319d5bd799704ad9650778f11ae2", + "repositoryDigest": "127.0.0.1:5000/hwlab/hwlab-patch-panel@sha256:02bec561d5f08f850e2884a2098da72978ad319d5bd799704ad9650778f11ae2", "runtimeKind": "node-command", "implementationState": "repo-entrypoint", "sourceState": "source-present", @@ -1024,15 +1118,15 @@ "artifactRequired": true, "artifactScope": "required", "notPublishedReason": null, - "localImageId": "sha256:4c51f39bbd4ef656d3a43ce1b6fa98e3d0b48b88108bbeb4cc66c9aaee2e6c10" + "localImageId": "sha256:c71176c15d1a9d40e482eb4bb986b355ed32ca85f011092e751f33187ad47925" }, { "serviceId": "hwlab-router", "status": "published", - "image": "127.0.0.1:5000/hwlab/hwlab-router:7e29522", - "imageTag": "7e29522", - "digest": "sha256:7c40c573078a9c325402bd47b2eb78a46c0c80564a228cf7c9fcf0cfba5bc6d2", - "repositoryDigest": "127.0.0.1:5000/hwlab/hwlab-router@sha256:7c40c573078a9c325402bd47b2eb78a46c0c80564a228cf7c9fcf0cfba5bc6d2", + "image": "127.0.0.1:5000/hwlab/hwlab-router:7de6edd", + "imageTag": "7de6edd", + "digest": "sha256:bb3b10c486bb1305f4cae7ec2751947eeb0cc60c9993d54e93802b5df3b13fb6", + "repositoryDigest": "127.0.0.1:5000/hwlab/hwlab-router@sha256:bb3b10c486bb1305f4cae7ec2751947eeb0cc60c9993d54e93802b5df3b13fb6", "runtimeKind": "node-command", "implementationState": "repo-entrypoint", "sourceState": "source-present", @@ -1041,15 +1135,15 @@ "artifactRequired": true, "artifactScope": "required", "notPublishedReason": null, - "localImageId": "sha256:67975dbccd542a357ee507efbff15afb16dec0d741aee7fb55b7bf425e1f0693" + "localImageId": "sha256:c0228ad3da36fe4ca1147d9485656ce4f4ab8fc0480debb6e538e02d846a544c" }, { "serviceId": "hwlab-tunnel-client", "status": "published", - "image": "127.0.0.1:5000/hwlab/hwlab-tunnel-client:7e29522", - "imageTag": "7e29522", - "digest": "sha256:b141dc88557b8f6391aa082fdb37c6f0db5bc3a76c97bb39ba00354a9208abd8", - "repositoryDigest": "127.0.0.1:5000/hwlab/hwlab-tunnel-client@sha256:b141dc88557b8f6391aa082fdb37c6f0db5bc3a76c97bb39ba00354a9208abd8", + "image": "127.0.0.1:5000/hwlab/hwlab-tunnel-client:7de6edd", + "imageTag": "7de6edd", + "digest": "sha256:ce9fa92362dd10911dcd66c59412690ccde401ce4ef82b548cfcea37499a725f", + "repositoryDigest": "127.0.0.1:5000/hwlab/hwlab-tunnel-client@sha256:ce9fa92362dd10911dcd66c59412690ccde401ce4ef82b548cfcea37499a725f", "runtimeKind": "node-command", "implementationState": "repo-entrypoint", "sourceState": "source-present", @@ -1058,15 +1152,15 @@ "artifactRequired": true, "artifactScope": "required", "notPublishedReason": null, - "localImageId": "sha256:92735bc2840a70c7d9149e08db4a23290a7a7a7e3591fb9588b8dcaafa8392b9" + "localImageId": "sha256:7a5c84a01525a1a99ed29527d6675cfea9ded353f077263c53b35d6c1eb6986b" }, { "serviceId": "hwlab-edge-proxy", "status": "published", - "image": "127.0.0.1:5000/hwlab/hwlab-edge-proxy:7e29522", - "imageTag": "7e29522", - "digest": "sha256:792505139793c3f3da7769f9dc9d1cb3203ff92797305b62e8f12207c69a9831", - "repositoryDigest": "127.0.0.1:5000/hwlab/hwlab-edge-proxy@sha256:792505139793c3f3da7769f9dc9d1cb3203ff92797305b62e8f12207c69a9831", + "image": "127.0.0.1:5000/hwlab/hwlab-edge-proxy:7de6edd", + "imageTag": "7de6edd", + "digest": "sha256:bf19f6812cbac3c54c938ad12a2b1ef9626a746017f85658b9960a1761afa32c", + "repositoryDigest": "127.0.0.1:5000/hwlab/hwlab-edge-proxy@sha256:bf19f6812cbac3c54c938ad12a2b1ef9626a746017f85658b9960a1761afa32c", "runtimeKind": "node-command", "implementationState": "repo-entrypoint", "sourceState": "source-present", @@ -1075,15 +1169,15 @@ "artifactRequired": true, "artifactScope": "required", "notPublishedReason": null, - "localImageId": "sha256:39fb8d2967998f80000695a7b15189b8eb0945acb63097e909f69476273248a6" + "localImageId": "sha256:1e76c2f2e81d5b48445ebe9ce8e23424462d5316a27a79e3226eefb5894c31ee" }, { "serviceId": "hwlab-cli", "status": "published", - "image": "127.0.0.1:5000/hwlab/hwlab-cli:7e29522", - "imageTag": "7e29522", - "digest": "sha256:43d1c175091bfb462eddd7dd22a780d6485d86bdb052c36b78201606f48fadc1", - "repositoryDigest": "127.0.0.1:5000/hwlab/hwlab-cli@sha256:43d1c175091bfb462eddd7dd22a780d6485d86bdb052c36b78201606f48fadc1", + "image": "127.0.0.1:5000/hwlab/hwlab-cli:7de6edd", + "imageTag": "7de6edd", + "digest": "sha256:b169c015c4c06dcdf6d43131d69dd72be1996cb5970e25014c4cec0271b459c0", + "repositoryDigest": "127.0.0.1:5000/hwlab/hwlab-cli@sha256:b169c015c4c06dcdf6d43131d69dd72be1996cb5970e25014c4cec0271b459c0", "runtimeKind": "cli", "implementationState": "repo-entrypoint", "sourceState": "source-present", @@ -1092,15 +1186,15 @@ "artifactRequired": true, "artifactScope": "required", "notPublishedReason": null, - "localImageId": "sha256:078ecef0bb5dccc008f54d9a3c2006d4fbe3873ec7a154cd36d23f26e457aea7" + "localImageId": "sha256:0964d211ac6a5d522f3547f12c814a45cd0dbf124e6945a3b64424275eaf3ea8" }, { "serviceId": "hwlab-agent-skills", "status": "published", - "image": "127.0.0.1:5000/hwlab/hwlab-agent-skills:7e29522", - "imageTag": "7e29522", - "digest": "sha256:c75510038dc33196dc254472e78101d545c0d777a7b33b531f02b39faf2588b5", - "repositoryDigest": "127.0.0.1:5000/hwlab/hwlab-agent-skills@sha256:c75510038dc33196dc254472e78101d545c0d777a7b33b531f02b39faf2588b5", + "image": "127.0.0.1:5000/hwlab/hwlab-agent-skills:7de6edd", + "imageTag": "7de6edd", + "digest": "sha256:7d1b6871763613bf7c6e37f5b05b1b49e2c367b4b0b94abfbb9bceb7ab5de4ed", + "repositoryDigest": "127.0.0.1:5000/hwlab/hwlab-agent-skills@sha256:7d1b6871763613bf7c6e37f5b05b1b49e2c367b4b0b94abfbb9bceb7ab5de4ed", "runtimeKind": "skills-bundle", "implementationState": "repo-bundle", "sourceState": "source-present", @@ -1109,18 +1203,10 @@ "artifactRequired": true, "artifactScope": "required", "notPublishedReason": null, - "localImageId": "sha256:9a9d0b0c2c06f41d6a4f43a9f9572797f1508fdc4c3a30cc508b6b82379cbdce" + "localImageId": "sha256:758db8bb259d106f11d23167a396fa8e340450d410c1e2b97ff2c7f0f605d212" } ], "blockers": [] }, - "notes": "DEV-only artifact report. Do not treat runtime placeholder images as real service implementations.", - "reportLifecycle": { - "version": "v1", - "state": "active", - "activeEndpoint": "http://74.48.78.17:16667", - "activeBrowserEndpoint": "http://74.48.78.17:16666", - "deprecatedEndpoint": null, - "summary": "Current DEV artifact publish report; it is not a DEV-LIVE runtime substitute." - } + "notes": "DEV-only artifact report. Do not treat runtime placeholder images as real service implementations." }