{
"index": 3088,
"is_latest": true,
"next_snapshot_timestamp": null,
"artifact_compliance_count": {
"true": 10,
"false": 0,
"null": 0
},
"timestamp": 1729329658.554001,
"type": "ECS",
"compliant": true,
"html_url": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/3088",
"artifacts": [
{
"name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/runner:3ac62c8",
"deployments": [],
"compliant": true,
"policy_decisions": [
{
"policy_id": "bb56942a-ebbc-4a51-ad7b-b1f83903",
"policy_version": 1,
"status": "COMPLIANT",
"rule_evaluations": [
{
"rule": {
"type": "provenance",
"definition": {
"required": true,
"exceptions": []
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "0ecddef8-8c33-45d5-8986-fc7b7b73",
"flow_id": "a81e8c6d-bb00-474f-b986-a6cb9b08",
"flow_name": "runner-ci",
"trail_id": "8464af22-c582-486a-a85e-05aca710",
"trail_name": "3ac62c83d48e8e2d26b86fb5d13ca63a2d46c8d2"
}
},
{
"type": "rule_satisfied",
"context": {
"artifact_id": "75b28a2c-5556-47d7-8a36-1cda4ee4",
"flow_id": "fe044e85-4bd5-44af-b181-950b685e",
"flow_name": "aws-prod-snyk-scan",
"trail_id": "d488d716-7c4c-4348-9c04-bd3b1f6f",
"trail_name": "runner-8349f70f53c2a560124ddb6511f1be67d9743187cdd5e0e5c65467d2dfe3cb37"
}
},
{
"type": "rule_satisfied",
"context": {
"artifact_id": "57f810e5-c457-49a2-8639-0521b8d1",
"flow_id": "2f2cd910-9bba-446b-a00d-07e6273c",
"flow_name": "aws-beta-snyk-scan",
"trail_id": "1d10712e-c21a-4f2f-b545-4335b2ee",
"trail_name": "runner-8349f70f53c2a560124ddb6511f1be67d9743187cdd5e0e5c65467d2dfe3cb37"
}
}
]
},
{
"rule": {
"type": "trail-compliance",
"definition": {
"required": true,
"exceptions": []
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "0ecddef8-8c33-45d5-8986-fc7b7b73",
"flow_id": "a81e8c6d-bb00-474f-b986-a6cb9b08",
"flow_name": "runner-ci",
"trail_id": "8464af22-c582-486a-a85e-05aca710",
"trail_name": "3ac62c83d48e8e2d26b86fb5d13ca63a2d46c8d2",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_satisfied",
"context": {
"artifact_id": "75b28a2c-5556-47d7-8a36-1cda4ee4",
"flow_id": "fe044e85-4bd5-44af-b181-950b685e",
"flow_name": "aws-prod-snyk-scan",
"trail_id": "d488d716-7c4c-4348-9c04-bd3b1f6f",
"trail_name": "runner-8349f70f53c2a560124ddb6511f1be67d9743187cdd5e0e5c65467d2dfe3cb37",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_satisfied",
"context": {
"artifact_id": "57f810e5-c457-49a2-8639-0521b8d1",
"flow_id": "2f2cd910-9bba-446b-a00d-07e6273c",
"flow_name": "aws-beta-snyk-scan",
"trail_id": "1d10712e-c21a-4f2f-b545-4335b2ee",
"trail_name": "runner-8349f70f53c2a560124ddb6511f1be67d9743187cdd5e0e5c65467d2dfe3cb37",
"artifact_status": "COMPLIANT"
}
}
]
}
]
},
{
"policy_id": "d4f22b17-1fac-4f36-a735-5a39f697",
"policy_version": 1,
"status": "COMPLIANT",
"rule_evaluations": [
{
"rule": {
"type": "provenance",
"definition": {
"required": true,
"exceptions": []
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "0ecddef8-8c33-45d5-8986-fc7b7b73",
"flow_id": "a81e8c6d-bb00-474f-b986-a6cb9b08",
"flow_name": "runner-ci",
"trail_id": "8464af22-c582-486a-a85e-05aca710",
"trail_name": "3ac62c83d48e8e2d26b86fb5d13ca63a2d46c8d2"
}
},
{
"type": "rule_satisfied",
"context": {
"artifact_id": "75b28a2c-5556-47d7-8a36-1cda4ee4",
"flow_id": "fe044e85-4bd5-44af-b181-950b685e",
"flow_name": "aws-prod-snyk-scan",
"trail_id": "d488d716-7c4c-4348-9c04-bd3b1f6f",
"trail_name": "runner-8349f70f53c2a560124ddb6511f1be67d9743187cdd5e0e5c65467d2dfe3cb37"
}
},
{
"type": "rule_satisfied",
"context": {
"artifact_id": "57f810e5-c457-49a2-8639-0521b8d1",
"flow_id": "2f2cd910-9bba-446b-a00d-07e6273c",
"flow_name": "aws-beta-snyk-scan",
"trail_id": "1d10712e-c21a-4f2f-b545-4335b2ee",
"trail_name": "runner-8349f70f53c2a560124ddb6511f1be67d9743187cdd5e0e5c65467d2dfe3cb37"
}
}
]
},
{
"rule": {
"type": "trail-compliance",
"definition": {
"required": false,
"exceptions": []
}
},
"satisfied": null,
"ignored": true,
"resolutions": []
},
{
"rule": {
"type": "attestation",
"definition": {
"if_condition": null,
"name": "snyk-container-scan",
"type": "snyk",
"must_be_compliant": true
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "0ecddef8-8c33-45d5-8986-fc7b7b73",
"flow_id": "a81e8c6d-bb00-474f-b986-a6cb9b08",
"flow_name": "runner-ci",
"trail_id": "8464af22-c582-486a-a85e-05aca710",
"trail_name": "3ac62c83d48e8e2d26b86fb5d13ca63a2d46c8d2",
"matching_attestation_id": "5d8bce47-7b15-4260-b076-9bb1649d",
"matching_attestation_name": "snyk-container-scan",
"matching_attestation_type": "snyk",
"matching_attestation_compliance": true
}
},
{
"type": "rule_satisfied",
"context": {
"artifact_id": "75b28a2c-5556-47d7-8a36-1cda4ee4",
"flow_id": "fe044e85-4bd5-44af-b181-950b685e",
"flow_name": "aws-prod-snyk-scan",
"trail_id": "d488d716-7c4c-4348-9c04-bd3b1f6f",
"trail_name": "runner-8349f70f53c2a560124ddb6511f1be67d9743187cdd5e0e5c65467d2dfe3cb37",
"matching_attestation_id": "585527b6-c77e-4f46-b6d9-b5121f7f",
"matching_attestation_name": "snyk-container-scan",
"matching_attestation_type": "snyk",
"matching_attestation_compliance": true
}
},
{
"type": "rule_satisfied",
"context": {
"artifact_id": "57f810e5-c457-49a2-8639-0521b8d1",
"flow_id": "2f2cd910-9bba-446b-a00d-07e6273c",
"flow_name": "aws-beta-snyk-scan",
"trail_id": "1d10712e-c21a-4f2f-b545-4335b2ee",
"trail_name": "runner-8349f70f53c2a560124ddb6511f1be67d9743187cdd5e0e5c65467d2dfe3cb37",
"matching_attestation_id": "9d6e6e87-b25d-4501-b84f-e8cd9f21",
"matching_attestation_name": "snyk-container-scan",
"matching_attestation_type": "snyk",
"matching_attestation_compliance": true
}
}
]
}
]
}
],
"reasons_for_incompliance": [],
"fingerprint": "8349f70f53c2a560124ddb6511f1be67d9743187cdd5e0e5c65467d2dfe3cb37",
"creationTimestamp": [
1729234222,
1729234244,
1729234244
],
"pods": null,
"annotation": {
"type": "updated-provenance",
"was": 3,
"now": 3
},
"flow_name": "runner-ci",
"git_commit": "3ac62c83d48e8e2d26b86fb5d13ca63a2d46c8d2",
"commit_url": "https://github.com/cyber-dojo/runner/commit/3ac62c83d48e8e2d26b86fb5d13ca63a2d46c8d2",
"html_url": "https://app.kosli.com/cyber-dojo/flows/runner-ci/artifacts/8349f70f53c2a560124ddb6511f1be67d9743187cdd5e0e5c65467d2dfe3cb37?artifact_id=0ecddef8-8c33-45d5-8986-fc7b7b73",
"flow_html_url": "https://app.kosli.com/cyber-dojo/flows/runner-ci",
"deployment_diff": {
"diff_url": "https://github.com/cyber-dojo/runner/compare/c7c77b11edde1dc83cd0a947f505015e9aef6f6d...3ac62c83d48e8e2d26b86fb5d13ca63a2d46c8d2",
"previous_git_commit": "c7c77b11edde1dc83cd0a947f505015e9aef6f6d",
"previous_fingerprint": "f037e904629a9fa1d4bccab5351b75efe691b765f82224a726fc329de81004a7",
"previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/runner:c7c77b1",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
"previous_git_commit_url": "https://github.com/cyber-dojo/runner/commit/c7c77b11edde1dc83cd0a947f505015e9aef6f6d",
"previous_trail_name": "c7c77b11edde1dc83cd0a947f505015e9aef6f6d",
"previous_template_reference_name": "runner"
},
"commit_lead_time": 606.0,
"flows": [
{
"flow_name": "runner-ci",
"trail_name": "3ac62c83d48e8e2d26b86fb5d13ca63a2d46c8d2",
"template_reference_name": "runner",
"git_commit": "3ac62c83d48e8e2d26b86fb5d13ca63a2d46c8d2",
"commit_url": "https://github.com/cyber-dojo/runner/commit/3ac62c83d48e8e2d26b86fb5d13ca63a2d46c8d2",
"git_commit_info": {
"sha1": "3ac62c83d48e8e2d26b86fb5d13ca63a2d46c8d2",
"message": "Merge pull request #60 from cyber-dojo/update-ci-workflow\n\nRun CI workflow on branch push",
"author": "Jon Jagger <jon@kosli.com>",
"branch": "main",
"timestamp": 1729233616.0,
"url": "https://github.com/cyber-dojo/runner/commit/3ac62c83d48e8e2d26b86fb5d13ca63a2d46c8d2"
},
"html_url": "https://app.kosli.com/cyber-dojo/flows/runner-ci/artifacts/8349f70f53c2a560124ddb6511f1be67d9743187cdd5e0e5c65467d2dfe3cb37?artifact_id=0ecddef8-8c33-45d5-8986-fc7b7b73",
"flow_html_url": "https://app.kosli.com/cyber-dojo/flows/runner-ci",
"deployment_diff": {
"diff_url": "https://github.com/cyber-dojo/runner/compare/c7c77b11edde1dc83cd0a947f505015e9aef6f6d...3ac62c83d48e8e2d26b86fb5d13ca63a2d46c8d2",
"previous_git_commit": "c7c77b11edde1dc83cd0a947f505015e9aef6f6d",
"previous_fingerprint": "f037e904629a9fa1d4bccab5351b75efe691b765f82224a726fc329de81004a7",
"previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/runner:c7c77b1",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
"previous_git_commit_url": "https://github.com/cyber-dojo/runner/commit/c7c77b11edde1dc83cd0a947f505015e9aef6f6d",
"previous_trail_name": "c7c77b11edde1dc83cd0a947f505015e9aef6f6d",
"previous_template_reference_name": "runner"
},
"commit_lead_time": 606.0,
"artifact_compliance_in_flow": true,
"flow_reasons_for_non_compliance": []
},
{
"flow_name": "aws-prod-snyk-scan",
"trail_name": "runner-8349f70f53c2a560124ddb6511f1be67d9743187cdd5e0e5c65467d2dfe3cb37",
"template_reference_name": "runner",
"git_commit": "702a8cc62dd76c89ba48ff2d7df5f6a7cbaf339d",
"commit_url": "https://github.com/cyber-dojo/live-snyk-scans/commit/702a8cc62dd76c89ba48ff2d7df5f6a7cbaf339d",
"git_commit_info": {
"sha1": "702a8cc62dd76c89ba48ff2d7df5f6a7cbaf339d",
"message": "Restore snyk scan for all Artifacts",
"author": "JonJagger <jon@kosli.com>",
"branch": "main",
"timestamp": 1726298419.0,
"url": "https://github.com/cyber-dojo/live-snyk-scans/commit/702a8cc62dd76c89ba48ff2d7df5f6a7cbaf339d"
},
"html_url": "https://app.kosli.com/cyber-dojo/flows/aws-prod-snyk-scan/artifacts/8349f70f53c2a560124ddb6511f1be67d9743187cdd5e0e5c65467d2dfe3cb37?artifact_id=75b28a2c-5556-47d7-8a36-1cda4ee4",
"flow_html_url": "https://app.kosli.com/cyber-dojo/flows/aws-prod-snyk-scan",
"deployment_diff": null,
"commit_lead_time": 2935803.0,
"artifact_compliance_in_flow": true,
"flow_reasons_for_non_compliance": []
},
{
"flow_name": "aws-beta-snyk-scan",
"trail_name": "runner-8349f70f53c2a560124ddb6511f1be67d9743187cdd5e0e5c65467d2dfe3cb37",
"template_reference_name": "runner",
"git_commit": "702a8cc62dd76c89ba48ff2d7df5f6a7cbaf339d",
"commit_url": "https://github.com/cyber-dojo/live-snyk-scans/commit/702a8cc62dd76c89ba48ff2d7df5f6a7cbaf339d",
"git_commit_info": {
"sha1": "702a8cc62dd76c89ba48ff2d7df5f6a7cbaf339d",
"message": "Restore snyk scan for all Artifacts",
"author": "JonJagger <jon@kosli.com>",
"branch": "main",
"timestamp": 1726298419.0,
"url": "https://github.com/cyber-dojo/live-snyk-scans/commit/702a8cc62dd76c89ba48ff2d7df5f6a7cbaf339d"
},
"html_url": "https://app.kosli.com/cyber-dojo/flows/aws-beta-snyk-scan/artifacts/8349f70f53c2a560124ddb6511f1be67d9743187cdd5e0e5c65467d2dfe3cb37?artifact_id=57f810e5-c457-49a2-8639-0521b8d1",
"flow_html_url": "https://app.kosli.com/cyber-dojo/flows/aws-beta-snyk-scan",
"deployment_diff": null,
"commit_lead_time": 2935803.0,
"artifact_compliance_in_flow": true,
"flow_reasons_for_non_compliance": []
}
]
},
{
"name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/languages-start-points:728ce43",
"deployments": [],
"compliant": true,
"policy_decisions": [
{
"policy_id": "bb56942a-ebbc-4a51-ad7b-b1f83903",
"policy_version": 1,
"status": "COMPLIANT",
"rule_evaluations": [
{
"rule": {
"type": "provenance",
"definition": {
"required": true,
"exceptions": []
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "219c2a0f-f6de-4c95-ba26-f2828740",
"flow_id": "0b4a3bb0-4f77-41a9-8dea-733d1dc3",
"flow_name": "languages-start-points-ci",
"trail_id": "09df4bb5-297e-4927-8e62-a26221db",
"trail_name": "728ce43c3194c0016c03057ec3cd6d184eeb4458"
}
}
]
},
{
"rule": {
"type": "trail-compliance",
"definition": {
"required": true,
"exceptions": []
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "219c2a0f-f6de-4c95-ba26-f2828740",
"flow_id": "0b4a3bb0-4f77-41a9-8dea-733d1dc3",
"flow_name": "languages-start-points-ci",
"trail_id": "09df4bb5-297e-4927-8e62-a26221db",
"trail_name": "728ce43c3194c0016c03057ec3cd6d184eeb4458",
"artifact_status": "COMPLIANT"
}
}
]
}
]
},
{
"policy_id": "d4f22b17-1fac-4f36-a735-5a39f697",
"policy_version": 1,
"status": "COMPLIANT",
"rule_evaluations": [
{
"rule": {
"type": "provenance",
"definition": {
"required": true,
"exceptions": []
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "219c2a0f-f6de-4c95-ba26-f2828740",
"flow_id": "0b4a3bb0-4f77-41a9-8dea-733d1dc3",
"flow_name": "languages-start-points-ci",
"trail_id": "09df4bb5-297e-4927-8e62-a26221db",
"trail_name": "728ce43c3194c0016c03057ec3cd6d184eeb4458"
}
}
]
},
{
"rule": {
"type": "trail-compliance",
"definition": {
"required": false,
"exceptions": []
}
},
"satisfied": null,
"ignored": true,
"resolutions": []
},
{
"rule": {
"type": "attestation",
"definition": {
"if_condition": null,
"name": "snyk-container-scan",
"type": "snyk",
"must_be_compliant": true
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "219c2a0f-f6de-4c95-ba26-f2828740",
"flow_id": "0b4a3bb0-4f77-41a9-8dea-733d1dc3",
"flow_name": "languages-start-points-ci",
"trail_id": "09df4bb5-297e-4927-8e62-a26221db",
"trail_name": "728ce43c3194c0016c03057ec3cd6d184eeb4458",
"matching_attestation_id": "88a1161a-34e5-4002-81bf-57e28345",
"matching_attestation_name": "snyk-container-scan",
"matching_attestation_type": "snyk",
"matching_attestation_compliance": true
}
}
]
}
]
}
],
"reasons_for_incompliance": [],
"fingerprint": "004329bd0a0c2f7b4804cb137dc1e2fddf41fd28ebff2777948db19f782a8d94",
"creationTimestamp": [
1729268282
],
"pods": null,
"annotation": {
"type": "unchanged",
"was": 1,
"now": 1
},
"flow_name": "languages-start-points-ci",
"git_commit": "728ce43c3194c0016c03057ec3cd6d184eeb4458",
"commit_url": "https://github.com/cyber-dojo/languages-start-points/commit/728ce43c3194c0016c03057ec3cd6d184eeb4458",
"html_url": "https://app.kosli.com/cyber-dojo/flows/languages-start-points-ci/artifacts/004329bd0a0c2f7b4804cb137dc1e2fddf41fd28ebff2777948db19f782a8d94?artifact_id=219c2a0f-f6de-4c95-ba26-f2828740",
"flow_html_url": "https://app.kosli.com/cyber-dojo/flows/languages-start-points-ci",
"deployment_diff": {
"diff_url": "https://github.com/cyber-dojo/languages-start-points/compare/18454ebb1ef3f8a5dcede95af769a2671f3d73d7...728ce43c3194c0016c03057ec3cd6d184eeb4458",
"previous_git_commit": "18454ebb1ef3f8a5dcede95af769a2671f3d73d7",
"previous_fingerprint": "671634827f21e8b63a5da95c89b15b23b91522839f2f4dc1989dcef9fdd5558b",
"previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/languages-start-points:18454eb",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
"previous_git_commit_url": "https://github.com/cyber-dojo/languages-start-points/commit/18454ebb1ef3f8a5dcede95af769a2671f3d73d7",
"previous_trail_name": "18454ebb1ef3f8a5dcede95af769a2671f3d73d7",
"previous_template_reference_name": "languages-start-points"
},
"commit_lead_time": 5836.0,
"flows": [
{
"flow_name": "languages-start-points-ci",
"trail_name": "728ce43c3194c0016c03057ec3cd6d184eeb4458",
"template_reference_name": "languages-start-points",
"git_commit": "728ce43c3194c0016c03057ec3cd6d184eeb4458",
"commit_url": "https://github.com/cyber-dojo/languages-start-points/commit/728ce43c3194c0016c03057ec3cd6d184eeb4458",
"git_commit_info": {
"sha1": "728ce43c3194c0016c03057ec3cd6d184eeb4458",
"message": "Merge pull request #46 from cyber-dojo/upgrade-kotlin-start-points\n\nUpgrade Kotlin-Kotest start point",
"author": "FayeSGW <108031168+FayeSGW@users.noreply.github.com>",
"branch": "main",
"timestamp": 1729262446.0,
"url": "https://github.com/cyber-dojo/languages-start-points/commit/728ce43c3194c0016c03057ec3cd6d184eeb4458"
},
"html_url": "https://app.kosli.com/cyber-dojo/flows/languages-start-points-ci/artifacts/004329bd0a0c2f7b4804cb137dc1e2fddf41fd28ebff2777948db19f782a8d94?artifact_id=219c2a0f-f6de-4c95-ba26-f2828740",
"flow_html_url": "https://app.kosli.com/cyber-dojo/flows/languages-start-points-ci",
"deployment_diff": {
"diff_url": "https://github.com/cyber-dojo/languages-start-points/compare/18454ebb1ef3f8a5dcede95af769a2671f3d73d7...728ce43c3194c0016c03057ec3cd6d184eeb4458",
"previous_git_commit": "18454ebb1ef3f8a5dcede95af769a2671f3d73d7",
"previous_fingerprint": "671634827f21e8b63a5da95c89b15b23b91522839f2f4dc1989dcef9fdd5558b",
"previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/languages-start-points:18454eb",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
"previous_git_commit_url": "https://github.com/cyber-dojo/languages-start-points/commit/18454ebb1ef3f8a5dcede95af769a2671f3d73d7",
"previous_trail_name": "18454ebb1ef3f8a5dcede95af769a2671f3d73d7",
"previous_template_reference_name": "languages-start-points"
},
"commit_lead_time": 5836.0,
"artifact_compliance_in_flow": true,
"flow_reasons_for_non_compliance": []
}
]
},
{
"name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/differ:ab690af",
"deployments": [],
"compliant": true,
"policy_decisions": [
{
"policy_id": "bb56942a-ebbc-4a51-ad7b-b1f83903",
"policy_version": 1,
"status": "COMPLIANT",
"rule_evaluations": [
{
"rule": {
"type": "provenance",
"definition": {
"required": true,
"exceptions": []
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "15ce92ab-9150-41ec-976b-1891de3e",
"flow_id": "d398561b-b0a9-4f0e-95a3-bbb0e347",
"flow_name": "differ-ci",
"trail_id": "232b18fa-c57a-451c-812e-decac21e",
"trail_name": "ab690afd704ba081db402ec5362a76e5fd0616e0"
}
}
]
},
{
"rule": {
"type": "trail-compliance",
"definition": {
"required": true,
"exceptions": []
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "15ce92ab-9150-41ec-976b-1891de3e",
"flow_id": "d398561b-b0a9-4f0e-95a3-bbb0e347",
"flow_name": "differ-ci",
"trail_id": "232b18fa-c57a-451c-812e-decac21e",
"trail_name": "ab690afd704ba081db402ec5362a76e5fd0616e0",
"artifact_status": "COMPLIANT"
}
}
]
}
]
},
{
"policy_id": "d4f22b17-1fac-4f36-a735-5a39f697",
"policy_version": 1,
"status": "COMPLIANT",
"rule_evaluations": [
{
"rule": {
"type": "provenance",
"definition": {
"required": true,
"exceptions": []
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "15ce92ab-9150-41ec-976b-1891de3e",
"flow_id": "d398561b-b0a9-4f0e-95a3-bbb0e347",
"flow_name": "differ-ci",
"trail_id": "232b18fa-c57a-451c-812e-decac21e",
"trail_name": "ab690afd704ba081db402ec5362a76e5fd0616e0"
}
}
]
},
{
"rule": {
"type": "trail-compliance",
"definition": {
"required": false,
"exceptions": []
}
},
"satisfied": null,
"ignored": true,
"resolutions": []
},
{
"rule": {
"type": "attestation",
"definition": {
"if_condition": null,
"name": "snyk-container-scan",
"type": "snyk",
"must_be_compliant": true
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "15ce92ab-9150-41ec-976b-1891de3e",
"flow_id": "d398561b-b0a9-4f0e-95a3-bbb0e347",
"flow_name": "differ-ci",
"trail_id": "232b18fa-c57a-451c-812e-decac21e",
"trail_name": "ab690afd704ba081db402ec5362a76e5fd0616e0",
"matching_attestation_id": "541c527c-e077-4c92-8db5-8c867465",
"matching_attestation_name": "snyk-container-scan",
"matching_attestation_type": "snyk",
"matching_attestation_compliance": true
}
}
]
}
]
}
],
"reasons_for_incompliance": [],
"fingerprint": "eb3612fe6c71410a3d1917220198907d2e9b869e129b888daeac1699a0bacdec",
"creationTimestamp": [
1729239373
],
"pods": null,
"annotation": {
"type": "unchanged",
"was": 1,
"now": 1
},
"flow_name": "differ-ci",
"git_commit": "ab690afd704ba081db402ec5362a76e5fd0616e0",
"commit_url": "https://github.com/cyber-dojo/differ/commit/ab690afd704ba081db402ec5362a76e5fd0616e0",
"html_url": "https://app.kosli.com/cyber-dojo/flows/differ-ci/artifacts/eb3612fe6c71410a3d1917220198907d2e9b869e129b888daeac1699a0bacdec?artifact_id=15ce92ab-9150-41ec-976b-1891de3e",
"flow_html_url": "https://app.kosli.com/cyber-dojo/flows/differ-ci",
"deployment_diff": {
"diff_url": "https://github.com/cyber-dojo/differ/compare/75ca96f151f4f878d270ec5a5ef7b73135a7f91f...ab690afd704ba081db402ec5362a76e5fd0616e0",
"previous_git_commit": "75ca96f151f4f878d270ec5a5ef7b73135a7f91f",
"previous_fingerprint": "13d77371642f79ee12995bfd26e8d0aaedd798ed7a2c088b9db5a466cbb100c6",
"previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/differ:75ca96f",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
"previous_git_commit_url": "https://github.com/cyber-dojo/differ/commit/75ca96f151f4f878d270ec5a5ef7b73135a7f91f",
"previous_trail_name": "75ca96f151f4f878d270ec5a5ef7b73135a7f91f",
"previous_template_reference_name": "differ"
},
"commit_lead_time": 1763.0,
"flows": [
{
"flow_name": "differ-ci",
"trail_name": "ab690afd704ba081db402ec5362a76e5fd0616e0",
"template_reference_name": "differ",
"git_commit": "ab690afd704ba081db402ec5362a76e5fd0616e0",
"commit_url": "https://github.com/cyber-dojo/differ/commit/ab690afd704ba081db402ec5362a76e5fd0616e0",
"git_commit_info": {
"sha1": "ab690afd704ba081db402ec5362a76e5fd0616e0",
"message": "Run workflow on pr (#252)",
"author": "Jon Jagger <jon@kosli.com>",
"branch": "main",
"timestamp": 1729237610.0,
"url": "https://github.com/cyber-dojo/differ/commit/ab690afd704ba081db402ec5362a76e5fd0616e0"
},
"html_url": "https://app.kosli.com/cyber-dojo/flows/differ-ci/artifacts/eb3612fe6c71410a3d1917220198907d2e9b869e129b888daeac1699a0bacdec?artifact_id=15ce92ab-9150-41ec-976b-1891de3e",
"flow_html_url": "https://app.kosli.com/cyber-dojo/flows/differ-ci",
"deployment_diff": {
"diff_url": "https://github.com/cyber-dojo/differ/compare/75ca96f151f4f878d270ec5a5ef7b73135a7f91f...ab690afd704ba081db402ec5362a76e5fd0616e0",
"previous_git_commit": "75ca96f151f4f878d270ec5a5ef7b73135a7f91f",
"previous_fingerprint": "13d77371642f79ee12995bfd26e8d0aaedd798ed7a2c088b9db5a466cbb100c6",
"previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/differ:75ca96f",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
"previous_git_commit_url": "https://github.com/cyber-dojo/differ/commit/75ca96f151f4f878d270ec5a5ef7b73135a7f91f",
"previous_trail_name": "75ca96f151f4f878d270ec5a5ef7b73135a7f91f",
"previous_template_reference_name": "differ"
},
"commit_lead_time": 1763.0,
"artifact_compliance_in_flow": true,
"flow_reasons_for_non_compliance": []
}
]
},
{
"name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/custom-start-points:60aae00",
"deployments": [],
"compliant": true,
"policy_decisions": [
{
"policy_id": "bb56942a-ebbc-4a51-ad7b-b1f83903",
"policy_version": 1,
"status": "COMPLIANT",
"rule_evaluations": [
{
"rule": {
"type": "provenance",
"definition": {
"required": true,
"exceptions": []
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "da1e0dcd-a077-433c-b860-7c48b264",
"flow_id": "217f4b82-2fe6-41ef-8214-e34c3a47",
"flow_name": "custom-start-points-ci",
"trail_id": "de200950-a596-4e9e-8020-a8cfc1e5",
"trail_name": "60aae00404ad8f41818e5f71542fbcea31ed4de8"
}
}
]
},
{
"rule": {
"type": "trail-compliance",
"definition": {
"required": true,
"exceptions": []
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "da1e0dcd-a077-433c-b860-7c48b264",
"flow_id": "217f4b82-2fe6-41ef-8214-e34c3a47",
"flow_name": "custom-start-points-ci",
"trail_id": "de200950-a596-4e9e-8020-a8cfc1e5",
"trail_name": "60aae00404ad8f41818e5f71542fbcea31ed4de8",
"artifact_status": "COMPLIANT"
}
}
]
}
]
},
{
"policy_id": "d4f22b17-1fac-4f36-a735-5a39f697",
"policy_version": 1,
"status": "COMPLIANT",
"rule_evaluations": [
{
"rule": {
"type": "provenance",
"definition": {
"required": true,
"exceptions": []
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "da1e0dcd-a077-433c-b860-7c48b264",
"flow_id": "217f4b82-2fe6-41ef-8214-e34c3a47",
"flow_name": "custom-start-points-ci",
"trail_id": "de200950-a596-4e9e-8020-a8cfc1e5",
"trail_name": "60aae00404ad8f41818e5f71542fbcea31ed4de8"
}
}
]
},
{
"rule": {
"type": "trail-compliance",
"definition": {
"required": false,
"exceptions": []
}
},
"satisfied": null,
"ignored": true,
"resolutions": []
},
{
"rule": {
"type": "attestation",
"definition": {
"if_condition": null,
"name": "snyk-container-scan",
"type": "snyk",
"must_be_compliant": true
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "da1e0dcd-a077-433c-b860-7c48b264",
"flow_id": "217f4b82-2fe6-41ef-8214-e34c3a47",
"flow_name": "custom-start-points-ci",
"trail_id": "de200950-a596-4e9e-8020-a8cfc1e5",
"trail_name": "60aae00404ad8f41818e5f71542fbcea31ed4de8",
"matching_attestation_id": "fe24cd0d-1a5a-478b-bfa4-db7c0eb0",
"matching_attestation_name": "snyk-container-scan",
"matching_attestation_type": "snyk",
"matching_attestation_compliance": true
}
}
]
}
]
}
],
"reasons_for_incompliance": [],
"fingerprint": "8dc9a4b5c7d65812fc5eada6a412964ee9983f0d05007a4b46a918d5d4d2c83b",
"creationTimestamp": [
1729236828
],
"pods": null,
"annotation": {
"type": "unchanged",
"was": 1,
"now": 1
},
"flow_name": "custom-start-points-ci",
"git_commit": "60aae00404ad8f41818e5f71542fbcea31ed4de8",
"commit_url": "https://github.com/cyber-dojo/custom-start-points/commit/60aae00404ad8f41818e5f71542fbcea31ed4de8",
"html_url": "https://app.kosli.com/cyber-dojo/flows/custom-start-points-ci/artifacts/8dc9a4b5c7d65812fc5eada6a412964ee9983f0d05007a4b46a918d5d4d2c83b?artifact_id=da1e0dcd-a077-433c-b860-7c48b264",
"flow_html_url": "https://app.kosli.com/cyber-dojo/flows/custom-start-points-ci",
"deployment_diff": {
"diff_url": "https://github.com/cyber-dojo/custom-start-points/compare/4affb689da03dd8980426d2fcab065744d2b1490...60aae00404ad8f41818e5f71542fbcea31ed4de8",
"previous_git_commit": "4affb689da03dd8980426d2fcab065744d2b1490",
"previous_fingerprint": "cda013c8291d51fdbb6c83095c44c63ebc715c307a68f49ee657f34bf4912b3e",
"previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/custom-start-points:4affb68",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
"previous_git_commit_url": "https://github.com/cyber-dojo/custom-start-points/commit/4affb689da03dd8980426d2fcab065744d2b1490",
"previous_trail_name": "4affb689da03dd8980426d2fcab065744d2b1490",
"previous_template_reference_name": "custom-start-points"
},
"commit_lead_time": 478.0,
"flows": [
{
"flow_name": "custom-start-points-ci",
"trail_name": "60aae00404ad8f41818e5f71542fbcea31ed4de8",
"template_reference_name": "custom-start-points",
"git_commit": "60aae00404ad8f41818e5f71542fbcea31ed4de8",
"commit_url": "https://github.com/cyber-dojo/custom-start-points/commit/60aae00404ad8f41818e5f71542fbcea31ed4de8",
"git_commit_info": {
"sha1": "60aae00404ad8f41818e5f71542fbcea31ed4de8",
"message": "Merge pull request #35 from cyber-dojo/run-workflow-on-all-pushes\n\nRun workflow on all pushes",
"author": "Jon Jagger <jon@kosli.com>",
"branch": "main",
"timestamp": 1729236350.0,
"url": "https://github.com/cyber-dojo/custom-start-points/commit/60aae00404ad8f41818e5f71542fbcea31ed4de8"
},
"html_url": "https://app.kosli.com/cyber-dojo/flows/custom-start-points-ci/artifacts/8dc9a4b5c7d65812fc5eada6a412964ee9983f0d05007a4b46a918d5d4d2c83b?artifact_id=da1e0dcd-a077-433c-b860-7c48b264",
"flow_html_url": "https://app.kosli.com/cyber-dojo/flows/custom-start-points-ci",
"deployment_diff": {
"diff_url": "https://github.com/cyber-dojo/custom-start-points/compare/4affb689da03dd8980426d2fcab065744d2b1490...60aae00404ad8f41818e5f71542fbcea31ed4de8",
"previous_git_commit": "4affb689da03dd8980426d2fcab065744d2b1490",
"previous_fingerprint": "cda013c8291d51fdbb6c83095c44c63ebc715c307a68f49ee657f34bf4912b3e",
"previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/custom-start-points:4affb68",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
"previous_git_commit_url": "https://github.com/cyber-dojo/custom-start-points/commit/4affb689da03dd8980426d2fcab065744d2b1490",
"previous_trail_name": "4affb689da03dd8980426d2fcab065744d2b1490",
"previous_template_reference_name": "custom-start-points"
},
"commit_lead_time": 478.0,
"artifact_compliance_in_flow": true,
"flow_reasons_for_non_compliance": []
}
]
},
{
"name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/exercises-start-points:4941b61",
"deployments": [],
"compliant": true,
"policy_decisions": [
{
"policy_id": "bb56942a-ebbc-4a51-ad7b-b1f83903",
"policy_version": 1,
"status": "COMPLIANT",
"rule_evaluations": [
{
"rule": {
"type": "provenance",
"definition": {
"required": true,
"exceptions": []
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "20f7245b-978b-40c1-b738-50e5c6ba",
"flow_id": "c1bb83be-5195-4814-9fae-eac6bf67",
"flow_name": "exercises-start-points-ci",
"trail_id": "21d54112-622a-42a3-98d0-3fbf90bb",
"trail_name": "4941b611620ab270d27f7b52f1510227e5703aa2"
}
}
]
},
{
"rule": {
"type": "trail-compliance",
"definition": {
"required": true,
"exceptions": []
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "20f7245b-978b-40c1-b738-50e5c6ba",
"flow_id": "c1bb83be-5195-4814-9fae-eac6bf67",
"flow_name": "exercises-start-points-ci",
"trail_id": "21d54112-622a-42a3-98d0-3fbf90bb",
"trail_name": "4941b611620ab270d27f7b52f1510227e5703aa2",
"artifact_status": "COMPLIANT"
}
}
]
}
]
},
{
"policy_id": "d4f22b17-1fac-4f36-a735-5a39f697",
"policy_version": 1,
"status": "COMPLIANT",
"rule_evaluations": [
{
"rule": {
"type": "provenance",
"definition": {
"required": true,
"exceptions": []
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "20f7245b-978b-40c1-b738-50e5c6ba",
"flow_id": "c1bb83be-5195-4814-9fae-eac6bf67",
"flow_name": "exercises-start-points-ci",
"trail_id": "21d54112-622a-42a3-98d0-3fbf90bb",
"trail_name": "4941b611620ab270d27f7b52f1510227e5703aa2"
}
}
]
},
{
"rule": {
"type": "trail-compliance",
"definition": {
"required": false,
"exceptions": []
}
},
"satisfied": null,
"ignored": true,
"resolutions": []
},
{
"rule": {
"type": "attestation",
"definition": {
"if_condition": null,
"name": "snyk-container-scan",
"type": "snyk",
"must_be_compliant": true
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "20f7245b-978b-40c1-b738-50e5c6ba",
"flow_id": "c1bb83be-5195-4814-9fae-eac6bf67",
"flow_name": "exercises-start-points-ci",
"trail_id": "21d54112-622a-42a3-98d0-3fbf90bb",
"trail_name": "4941b611620ab270d27f7b52f1510227e5703aa2",
"matching_attestation_id": "d98f9015-d94a-49c4-8d93-c82a0c7a",
"matching_attestation_name": "snyk-container-scan",
"matching_attestation_type": "snyk",
"matching_attestation_compliance": true
}
}
]
}
]
}
],
"reasons_for_incompliance": [],
"fingerprint": "c352870e65cac4c5b30c499bb3d0f6b895b08f02d734ddb046f6acc12608b993",
"creationTimestamp": [
1729236696
],
"pods": null,
"annotation": {
"type": "unchanged",
"was": 1,
"now": 1
},
"flow_name": "exercises-start-points-ci",
"git_commit": "4941b611620ab270d27f7b52f1510227e5703aa2",
"commit_url": "https://github.com/cyber-dojo/exercises-start-points/commit/4941b611620ab270d27f7b52f1510227e5703aa2",
"html_url": "https://app.kosli.com/cyber-dojo/flows/exercises-start-points-ci/artifacts/c352870e65cac4c5b30c499bb3d0f6b895b08f02d734ddb046f6acc12608b993?artifact_id=20f7245b-978b-40c1-b738-50e5c6ba",
"flow_html_url": "https://app.kosli.com/cyber-dojo/flows/exercises-start-points-ci",
"deployment_diff": {
"diff_url": "https://github.com/cyber-dojo/exercises-start-points/compare/0becb7d32beab02239efa4dc52708f0c8f4d2a40...4941b611620ab270d27f7b52f1510227e5703aa2",
"previous_git_commit": "0becb7d32beab02239efa4dc52708f0c8f4d2a40",
"previous_fingerprint": "3083b47bf9fe5117d1c8eb78b9bd3eb567b9cf260923caf8c17fa4b36a1af975",
"previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/exercises-start-points:0becb7d",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
"previous_git_commit_url": "https://github.com/cyber-dojo/exercises-start-points/commit/0becb7d32beab02239efa4dc52708f0c8f4d2a40",
"previous_trail_name": "0becb7d32beab02239efa4dc52708f0c8f4d2a40",
"previous_template_reference_name": "exercises-start-points"
},
"commit_lead_time": 499.0,
"flows": [
{
"flow_name": "exercises-start-points-ci",
"trail_name": "4941b611620ab270d27f7b52f1510227e5703aa2",
"template_reference_name": "exercises-start-points",
"git_commit": "4941b611620ab270d27f7b52f1510227e5703aa2",
"commit_url": "https://github.com/cyber-dojo/exercises-start-points/commit/4941b611620ab270d27f7b52f1510227e5703aa2",
"git_commit_info": {
"sha1": "4941b611620ab270d27f7b52f1510227e5703aa2",
"message": "Merge pull request #37 from cyber-dojo/fix-build-image\n\nIn workflow, git fetch is only needed on pr branch",
"author": "Jon Jagger <jon@kosli.com>",
"branch": "main",
"timestamp": 1729236197.0,
"url": "https://github.com/cyber-dojo/exercises-start-points/commit/4941b611620ab270d27f7b52f1510227e5703aa2"
},
"html_url": "https://app.kosli.com/cyber-dojo/flows/exercises-start-points-ci/artifacts/c352870e65cac4c5b30c499bb3d0f6b895b08f02d734ddb046f6acc12608b993?artifact_id=20f7245b-978b-40c1-b738-50e5c6ba",
"flow_html_url": "https://app.kosli.com/cyber-dojo/flows/exercises-start-points-ci",
"deployment_diff": {
"diff_url": "https://github.com/cyber-dojo/exercises-start-points/compare/0becb7d32beab02239efa4dc52708f0c8f4d2a40...4941b611620ab270d27f7b52f1510227e5703aa2",
"previous_git_commit": "0becb7d32beab02239efa4dc52708f0c8f4d2a40",
"previous_fingerprint": "3083b47bf9fe5117d1c8eb78b9bd3eb567b9cf260923caf8c17fa4b36a1af975",
"previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/exercises-start-points:0becb7d",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
"previous_git_commit_url": "https://github.com/cyber-dojo/exercises-start-points/commit/0becb7d32beab02239efa4dc52708f0c8f4d2a40",
"previous_trail_name": "0becb7d32beab02239efa4dc52708f0c8f4d2a40",
"previous_template_reference_name": "exercises-start-points"
},
"commit_lead_time": 499.0,
"artifact_compliance_in_flow": true,
"flow_reasons_for_non_compliance": []
}
]
},
{
"name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:e59fdb9",
"deployments": [],
"compliant": true,
"policy_decisions": [
{
"policy_id": "bb56942a-ebbc-4a51-ad7b-b1f83903",
"policy_version": 1,
"status": "COMPLIANT",
"rule_evaluations": [
{
"rule": {
"type": "provenance",
"definition": {
"required": true,
"exceptions": []
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "72ceb41e-cc45-41bd-b113-9eae837f",
"flow_id": "fd583a48-28de-4b5c-b4a7-b6356e94",
"flow_name": "web-ci",
"trail_id": "5e4a8987-c1a2-4274-b99b-d67e57d9",
"trail_name": "e59fdb9b2d03a9476722bb807cd3345b413722fd"
}
}
]
},
{
"rule": {
"type": "trail-compliance",
"definition": {
"required": true,
"exceptions": []
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "72ceb41e-cc45-41bd-b113-9eae837f",
"flow_id": "fd583a48-28de-4b5c-b4a7-b6356e94",
"flow_name": "web-ci",
"trail_id": "5e4a8987-c1a2-4274-b99b-d67e57d9",
"trail_name": "e59fdb9b2d03a9476722bb807cd3345b413722fd",
"artifact_status": "COMPLIANT"
}
}
]
}
]
},
{
"policy_id": "d4f22b17-1fac-4f36-a735-5a39f697",
"policy_version": 1,
"status": "COMPLIANT",
"rule_evaluations": [
{
"rule": {
"type": "provenance",
"definition": {
"required": true,
"exceptions": []
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "72ceb41e-cc45-41bd-b113-9eae837f",
"flow_id": "fd583a48-28de-4b5c-b4a7-b6356e94",
"flow_name": "web-ci",
"trail_id": "5e4a8987-c1a2-4274-b99b-d67e57d9",
"trail_name": "e59fdb9b2d03a9476722bb807cd3345b413722fd"
}
}
]
},
{
"rule": {
"type": "trail-compliance",
"definition": {
"required": false,
"exceptions": []
}
},
"satisfied": null,
"ignored": true,
"resolutions": []
},
{
"rule": {
"type": "attestation",
"definition": {
"if_condition": null,
"name": "snyk-container-scan",
"type": "snyk",
"must_be_compliant": true
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "72ceb41e-cc45-41bd-b113-9eae837f",
"flow_id": "fd583a48-28de-4b5c-b4a7-b6356e94",
"flow_name": "web-ci",
"trail_id": "5e4a8987-c1a2-4274-b99b-d67e57d9",
"trail_name": "e59fdb9b2d03a9476722bb807cd3345b413722fd",
"matching_attestation_id": "fbbbe8f2-0064-4fb5-8f9e-266f539a",
"matching_attestation_name": "snyk-container-scan",
"matching_attestation_type": "snyk",
"matching_attestation_compliance": true
}
}
]
}
]
}
],
"reasons_for_incompliance": [],
"fingerprint": "3b2c3458c75a42af7dd598aeef9bcc06271b7dac6d2ba5578910839f6bad50f4",
"creationTimestamp": [
1729235175,
1729235182,
1729235183
],
"pods": null,
"annotation": {
"type": "unchanged",
"was": 3,
"now": 3
},
"flow_name": "web-ci",
"git_commit": "e59fdb9b2d03a9476722bb807cd3345b413722fd",
"commit_url": "https://github.com/cyber-dojo/web/commit/e59fdb9b2d03a9476722bb807cd3345b413722fd",
"html_url": "https://app.kosli.com/cyber-dojo/flows/web-ci/artifacts/3b2c3458c75a42af7dd598aeef9bcc06271b7dac6d2ba5578910839f6bad50f4?artifact_id=72ceb41e-cc45-41bd-b113-9eae837f",
"flow_html_url": "https://app.kosli.com/cyber-dojo/flows/web-ci",
"deployment_diff": {
"diff_url": "https://github.com/cyber-dojo/web/compare/bc17b5b291cd9ee76942d5d7e0f9fba950fa25a4...e59fdb9b2d03a9476722bb807cd3345b413722fd",
"previous_git_commit": "bc17b5b291cd9ee76942d5d7e0f9fba950fa25a4",
"previous_fingerprint": "312bb3fd31c5c89cfe28fc9261068c835580b74e84dc478d283c0ff8b8a0ab7f",
"previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:bc17b5b",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
"previous_git_commit_url": "https://github.com/cyber-dojo/web/commit/bc17b5b291cd9ee76942d5d7e0f9fba950fa25a4",
"previous_trail_name": "bc17b5b291cd9ee76942d5d7e0f9fba950fa25a4",
"previous_template_reference_name": "web"
},
"commit_lead_time": 528.0,
"flows": [
{
"flow_name": "web-ci",
"trail_name": "e59fdb9b2d03a9476722bb807cd3345b413722fd",
"template_reference_name": "web",
"git_commit": "e59fdb9b2d03a9476722bb807cd3345b413722fd",
"commit_url": "https://github.com/cyber-dojo/web/commit/e59fdb9b2d03a9476722bb807cd3345b413722fd",
"git_commit_info": {
"sha1": "e59fdb9b2d03a9476722bb807cd3345b413722fd",
"message": "Run workflow on all pushes (#125)",
"author": "Jon Jagger <jon@kosli.com>",
"branch": "main",
"timestamp": 1729234647.0,
"url": "https://github.com/cyber-dojo/web/commit/e59fdb9b2d03a9476722bb807cd3345b413722fd"
},
"html_url": "https://app.kosli.com/cyber-dojo/flows/web-ci/artifacts/3b2c3458c75a42af7dd598aeef9bcc06271b7dac6d2ba5578910839f6bad50f4?artifact_id=72ceb41e-cc45-41bd-b113-9eae837f",
"flow_html_url": "https://app.kosli.com/cyber-dojo/flows/web-ci",
"deployment_diff": {
"diff_url": "https://github.com/cyber-dojo/web/compare/bc17b5b291cd9ee76942d5d7e0f9fba950fa25a4...e59fdb9b2d03a9476722bb807cd3345b413722fd",
"previous_git_commit": "bc17b5b291cd9ee76942d5d7e0f9fba950fa25a4",
"previous_fingerprint": "312bb3fd31c5c89cfe28fc9261068c835580b74e84dc478d283c0ff8b8a0ab7f",
"previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:bc17b5b",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
"previous_git_commit_url": "https://github.com/cyber-dojo/web/commit/bc17b5b291cd9ee76942d5d7e0f9fba950fa25a4",
"previous_trail_name": "bc17b5b291cd9ee76942d5d7e0f9fba950fa25a4",
"previous_template_reference_name": "web"
},
"commit_lead_time": 528.0,
"artifact_compliance_in_flow": true,
"flow_reasons_for_non_compliance": []
}
]
},
{
"name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/nginx:d529418",
"deployments": [],
"compliant": true,
"policy_decisions": [
{
"policy_id": "bb56942a-ebbc-4a51-ad7b-b1f83903",
"policy_version": 1,
"status": "COMPLIANT",
"rule_evaluations": [
{
"rule": {
"type": "provenance",
"definition": {
"required": true,
"exceptions": []
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "44aa3a7c-f871-42ce-828e-8606e0f9",
"flow_id": "28447c7d-904b-4594-8b05-88d5d938",
"flow_name": "nginx-ci",
"trail_id": "94b8d7ca-3a4c-4309-8914-e1d06a24",
"trail_name": "d529418ddc760f199014bd5396ae2893497aaa98"
}
}
]
},
{
"rule": {
"type": "trail-compliance",
"definition": {
"required": true,
"exceptions": []
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "44aa3a7c-f871-42ce-828e-8606e0f9",
"flow_id": "28447c7d-904b-4594-8b05-88d5d938",
"flow_name": "nginx-ci",
"trail_id": "94b8d7ca-3a4c-4309-8914-e1d06a24",
"trail_name": "d529418ddc760f199014bd5396ae2893497aaa98",
"artifact_status": "COMPLIANT"
}
}
]
}
]
},
{
"policy_id": "d4f22b17-1fac-4f36-a735-5a39f697",
"policy_version": 1,
"status": "COMPLIANT",
"rule_evaluations": [
{
"rule": {
"type": "provenance",
"definition": {
"required": true,
"exceptions": []
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "44aa3a7c-f871-42ce-828e-8606e0f9",
"flow_id": "28447c7d-904b-4594-8b05-88d5d938",
"flow_name": "nginx-ci",
"trail_id": "94b8d7ca-3a4c-4309-8914-e1d06a24",
"trail_name": "d529418ddc760f199014bd5396ae2893497aaa98"
}
}
]
},
{
"rule": {
"type": "trail-compliance",
"definition": {
"required": false,
"exceptions": []
}
},
"satisfied": null,
"ignored": true,
"resolutions": []
},
{
"rule": {
"type": "attestation",
"definition": {
"if_condition": null,
"name": "snyk-container-scan",
"type": "snyk",
"must_be_compliant": true
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "44aa3a7c-f871-42ce-828e-8606e0f9",
"flow_id": "28447c7d-904b-4594-8b05-88d5d938",
"flow_name": "nginx-ci",
"trail_id": "94b8d7ca-3a4c-4309-8914-e1d06a24",
"trail_name": "d529418ddc760f199014bd5396ae2893497aaa98",
"matching_attestation_id": "3d21cc38-989d-4844-a03f-50272540",
"matching_attestation_name": "snyk-container-scan",
"matching_attestation_type": "snyk",
"matching_attestation_compliance": true
}
}
]
}
]
}
],
"reasons_for_incompliance": [],
"fingerprint": "7615d5a81eadf771f6b1bb7b82547d850d85c1a0687e647455d4700488a74148",
"creationTimestamp": [
1729235140
],
"pods": null,
"annotation": {
"type": "unchanged",
"was": 1,
"now": 1
},
"flow_name": "nginx-ci",
"git_commit": "d529418ddc760f199014bd5396ae2893497aaa98",
"commit_url": "https://github.com/cyber-dojo/nginx/commit/d529418ddc760f199014bd5396ae2893497aaa98",
"html_url": "https://app.kosli.com/cyber-dojo/flows/nginx-ci/artifacts/7615d5a81eadf771f6b1bb7b82547d850d85c1a0687e647455d4700488a74148?artifact_id=44aa3a7c-f871-42ce-828e-8606e0f9",
"flow_html_url": "https://app.kosli.com/cyber-dojo/flows/nginx-ci",
"deployment_diff": {
"diff_url": "https://github.com/cyber-dojo/nginx/compare/3fa2a5f2e9d023a840dec478cc10c632204dc9ae...d529418ddc760f199014bd5396ae2893497aaa98",
"previous_git_commit": "3fa2a5f2e9d023a840dec478cc10c632204dc9ae",
"previous_fingerprint": "4ae7331e24aa1b671e1c4e3f7bdfcb8ad54af31f6ab00adef9b96d3213ae86e6",
"previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/nginx:3fa2a5f",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
"previous_git_commit_url": "https://github.com/cyber-dojo/nginx/commit/3fa2a5f2e9d023a840dec478cc10c632204dc9ae",
"previous_trail_name": "3fa2a5f2e9d023a840dec478cc10c632204dc9ae",
"previous_template_reference_name": "nginx"
},
"commit_lead_time": 751.0,
"flows": [
{
"flow_name": "nginx-ci",
"trail_name": "d529418ddc760f199014bd5396ae2893497aaa98",
"template_reference_name": "nginx",
"git_commit": "d529418ddc760f199014bd5396ae2893497aaa98",
"commit_url": "https://github.com/cyber-dojo/nginx/commit/d529418ddc760f199014bd5396ae2893497aaa98",
"git_commit_info": {
"sha1": "d529418ddc760f199014bd5396ae2893497aaa98",
"message": "Merge pull request #31 from cyber-dojo/run-workflow-on-all-pushes\n\nRun workflow on all pushes",
"author": "Jon Jagger <jon@kosli.com>",
"branch": "main",
"timestamp": 1729234389.0,
"url": "https://github.com/cyber-dojo/nginx/commit/d529418ddc760f199014bd5396ae2893497aaa98"
},
"html_url": "https://app.kosli.com/cyber-dojo/flows/nginx-ci/artifacts/7615d5a81eadf771f6b1bb7b82547d850d85c1a0687e647455d4700488a74148?artifact_id=44aa3a7c-f871-42ce-828e-8606e0f9",
"flow_html_url": "https://app.kosli.com/cyber-dojo/flows/nginx-ci",
"deployment_diff": {
"diff_url": "https://github.com/cyber-dojo/nginx/compare/3fa2a5f2e9d023a840dec478cc10c632204dc9ae...d529418ddc760f199014bd5396ae2893497aaa98",
"previous_git_commit": "3fa2a5f2e9d023a840dec478cc10c632204dc9ae",
"previous_fingerprint": "4ae7331e24aa1b671e1c4e3f7bdfcb8ad54af31f6ab00adef9b96d3213ae86e6",
"previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/nginx:3fa2a5f",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
"previous_git_commit_url": "https://github.com/cyber-dojo/nginx/commit/3fa2a5f2e9d023a840dec478cc10c632204dc9ae",
"previous_trail_name": "3fa2a5f2e9d023a840dec478cc10c632204dc9ae",
"previous_template_reference_name": "nginx"
},
"commit_lead_time": 751.0,
"artifact_compliance_in_flow": true,
"flow_reasons_for_non_compliance": []
}
]
},
{
"name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/saver:f6565a5",
"deployments": [],
"compliant": true,
"policy_decisions": [
{
"policy_id": "bb56942a-ebbc-4a51-ad7b-b1f83903",
"policy_version": 1,
"status": "COMPLIANT",
"rule_evaluations": [
{
"rule": {
"type": "provenance",
"definition": {
"required": true,
"exceptions": []
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "8c9421e8-325d-41ea-a89a-3e56b8ca",
"flow_id": "e54bdf65-de27-448f-807a-08e09590",
"flow_name": "saver-ci",
"trail_id": "cb90d3f8-6f54-40e8-82ff-3efd233c",
"trail_name": "f6565a5dcd07819bfffbc034213ec00a5968b4c0"
}
}
]
},
{
"rule": {
"type": "trail-compliance",
"definition": {
"required": true,
"exceptions": []
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "8c9421e8-325d-41ea-a89a-3e56b8ca",
"flow_id": "e54bdf65-de27-448f-807a-08e09590",
"flow_name": "saver-ci",
"trail_id": "cb90d3f8-6f54-40e8-82ff-3efd233c",
"trail_name": "f6565a5dcd07819bfffbc034213ec00a5968b4c0",
"artifact_status": "COMPLIANT"
}
}
]
}
]
},
{
"policy_id": "d4f22b17-1fac-4f36-a735-5a39f697",
"policy_version": 1,
"status": "COMPLIANT",
"rule_evaluations": [
{
"rule": {
"type": "provenance",
"definition": {
"required": true,
"exceptions": []
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "8c9421e8-325d-41ea-a89a-3e56b8ca",
"flow_id": "e54bdf65-de27-448f-807a-08e09590",
"flow_name": "saver-ci",
"trail_id": "cb90d3f8-6f54-40e8-82ff-3efd233c",
"trail_name": "f6565a5dcd07819bfffbc034213ec00a5968b4c0"
}
}
]
},
{
"rule": {
"type": "trail-compliance",
"definition": {
"required": false,
"exceptions": []
}
},
"satisfied": null,
"ignored": true,
"resolutions": []
},
{
"rule": {
"type": "attestation",
"definition": {
"if_condition": null,
"name": "snyk-container-scan",
"type": "snyk",
"must_be_compliant": true
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "8c9421e8-325d-41ea-a89a-3e56b8ca",
"flow_id": "e54bdf65-de27-448f-807a-08e09590",
"flow_name": "saver-ci",
"trail_id": "cb90d3f8-6f54-40e8-82ff-3efd233c",
"trail_name": "f6565a5dcd07819bfffbc034213ec00a5968b4c0",
"matching_attestation_id": "db8f3f98-fc3a-4bf2-a97f-d4c1ae1a",
"matching_attestation_name": "snyk-container-scan",
"matching_attestation_type": "snyk",
"matching_attestation_compliance": true
}
}
]
}
]
}
],
"reasons_for_incompliance": [],
"fingerprint": "bbd34a4d5dc2ff5f5a82fde0b4ebba65954b7077db81228df574287a0e607035",
"creationTimestamp": [
1729234525
],
"pods": null,
"annotation": {
"type": "unchanged",
"was": 1,
"now": 1
},
"flow_name": "saver-ci",
"git_commit": "f6565a5dcd07819bfffbc034213ec00a5968b4c0",
"commit_url": "https://github.com/cyber-dojo/saver/commit/f6565a5dcd07819bfffbc034213ec00a5968b4c0",
"html_url": "https://app.kosli.com/cyber-dojo/flows/saver-ci/artifacts/bbd34a4d5dc2ff5f5a82fde0b4ebba65954b7077db81228df574287a0e607035?artifact_id=8c9421e8-325d-41ea-a89a-3e56b8ca",
"flow_html_url": "https://app.kosli.com/cyber-dojo/flows/saver-ci",
"deployment_diff": {
"diff_url": "https://github.com/cyber-dojo/saver/compare/5d0dab2a7ba1f36ff04ece871c5f2a6136eef877...f6565a5dcd07819bfffbc034213ec00a5968b4c0",
"previous_git_commit": "5d0dab2a7ba1f36ff04ece871c5f2a6136eef877",
"previous_fingerprint": "19ab7651e20e923edd9fc7146459e5cfc218a609d2612b2a947453f89f36207b",
"previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/saver:5d0dab2",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
"previous_git_commit_url": "https://github.com/cyber-dojo/saver/commit/5d0dab2a7ba1f36ff04ece871c5f2a6136eef877",
"previous_trail_name": "5d0dab2a7ba1f36ff04ece871c5f2a6136eef877",
"previous_template_reference_name": "saver"
},
"commit_lead_time": 544.0,
"flows": [
{
"flow_name": "saver-ci",
"trail_name": "f6565a5dcd07819bfffbc034213ec00a5968b4c0",
"template_reference_name": "saver",
"git_commit": "f6565a5dcd07819bfffbc034213ec00a5968b4c0",
"commit_url": "https://github.com/cyber-dojo/saver/commit/f6565a5dcd07819bfffbc034213ec00a5968b4c0",
"git_commit_info": {
"sha1": "f6565a5dcd07819bfffbc034213ec00a5968b4c0",
"message": "Merge pull request #83 from cyber-dojo/run-workflow-on-all-pushes\n\nRun workflow on all pushes",
"author": "Jon Jagger <jon@kosli.com>",
"branch": "main",
"timestamp": 1729233981.0,
"url": "https://github.com/cyber-dojo/saver/commit/f6565a5dcd07819bfffbc034213ec00a5968b4c0"
},
"html_url": "https://app.kosli.com/cyber-dojo/flows/saver-ci/artifacts/bbd34a4d5dc2ff5f5a82fde0b4ebba65954b7077db81228df574287a0e607035?artifact_id=8c9421e8-325d-41ea-a89a-3e56b8ca",
"flow_html_url": "https://app.kosli.com/cyber-dojo/flows/saver-ci",
"deployment_diff": {
"diff_url": "https://github.com/cyber-dojo/saver/compare/5d0dab2a7ba1f36ff04ece871c5f2a6136eef877...f6565a5dcd07819bfffbc034213ec00a5968b4c0",
"previous_git_commit": "5d0dab2a7ba1f36ff04ece871c5f2a6136eef877",
"previous_fingerprint": "19ab7651e20e923edd9fc7146459e5cfc218a609d2612b2a947453f89f36207b",
"previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/saver:5d0dab2",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
"previous_git_commit_url": "https://github.com/cyber-dojo/saver/commit/5d0dab2a7ba1f36ff04ece871c5f2a6136eef877",
"previous_trail_name": "5d0dab2a7ba1f36ff04ece871c5f2a6136eef877",
"previous_template_reference_name": "saver"
},
"commit_lead_time": 544.0,
"artifact_compliance_in_flow": true,
"flow_reasons_for_non_compliance": []
}
]
},
{
"name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/dashboard:b550f62",
"deployments": [],
"compliant": true,
"policy_decisions": [
{
"policy_id": "bb56942a-ebbc-4a51-ad7b-b1f83903",
"policy_version": 1,
"status": "COMPLIANT",
"rule_evaluations": [
{
"rule": {
"type": "provenance",
"definition": {
"required": true,
"exceptions": []
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "bfe7cb7e-5f3c-411f-b954-2447dd9e",
"flow_id": "f60c8f3f-67cd-4496-8e17-ed6fdb1e",
"flow_name": "dashboard-ci",
"trail_id": "ef3c2476-1d2a-49ea-8592-57750eb0",
"trail_name": "b550f626d5e78e52842d84cf2a81af7dd1988b82"
}
}
]
},
{
"rule": {
"type": "trail-compliance",
"definition": {
"required": true,
"exceptions": []
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "bfe7cb7e-5f3c-411f-b954-2447dd9e",
"flow_id": "f60c8f3f-67cd-4496-8e17-ed6fdb1e",
"flow_name": "dashboard-ci",
"trail_id": "ef3c2476-1d2a-49ea-8592-57750eb0",
"trail_name": "b550f626d5e78e52842d84cf2a81af7dd1988b82",
"artifact_status": "COMPLIANT"
}
}
]
}
]
},
{
"policy_id": "d4f22b17-1fac-4f36-a735-5a39f697",
"policy_version": 1,
"status": "COMPLIANT",
"rule_evaluations": [
{
"rule": {
"type": "provenance",
"definition": {
"required": true,
"exceptions": []
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "bfe7cb7e-5f3c-411f-b954-2447dd9e",
"flow_id": "f60c8f3f-67cd-4496-8e17-ed6fdb1e",
"flow_name": "dashboard-ci",
"trail_id": "ef3c2476-1d2a-49ea-8592-57750eb0",
"trail_name": "b550f626d5e78e52842d84cf2a81af7dd1988b82"
}
}
]
},
{
"rule": {
"type": "trail-compliance",
"definition": {
"required": false,
"exceptions": []
}
},
"satisfied": null,
"ignored": true,
"resolutions": []
},
{
"rule": {
"type": "attestation",
"definition": {
"if_condition": null,
"name": "snyk-container-scan",
"type": "snyk",
"must_be_compliant": true
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "bfe7cb7e-5f3c-411f-b954-2447dd9e",
"flow_id": "f60c8f3f-67cd-4496-8e17-ed6fdb1e",
"flow_name": "dashboard-ci",
"trail_id": "ef3c2476-1d2a-49ea-8592-57750eb0",
"trail_name": "b550f626d5e78e52842d84cf2a81af7dd1988b82",
"matching_attestation_id": "f666f535-484c-4841-9139-87966281",
"matching_attestation_name": "snyk-container-scan",
"matching_attestation_type": "snyk",
"matching_attestation_compliance": true
}
}
]
}
]
}
],
"reasons_for_incompliance": [],
"fingerprint": "8fd8bba06e8453ed5326465c4ca9839ac82c10b60e4978c2cb60769c7ef02d6c",
"creationTimestamp": [
1729233600
],
"pods": null,
"annotation": {
"type": "unchanged",
"was": 1,
"now": 1
},
"flow_name": "dashboard-ci",
"git_commit": "b550f626d5e78e52842d84cf2a81af7dd1988b82",
"commit_url": "https://github.com/cyber-dojo/dashboard/commit/b550f626d5e78e52842d84cf2a81af7dd1988b82",
"html_url": "https://app.kosli.com/cyber-dojo/flows/dashboard-ci/artifacts/8fd8bba06e8453ed5326465c4ca9839ac82c10b60e4978c2cb60769c7ef02d6c?artifact_id=bfe7cb7e-5f3c-411f-b954-2447dd9e",
"flow_html_url": "https://app.kosli.com/cyber-dojo/flows/dashboard-ci",
"deployment_diff": {
"diff_url": "https://github.com/cyber-dojo/dashboard/compare/3377575b90a02225fca689aaa44416d9d6fb21de...b550f626d5e78e52842d84cf2a81af7dd1988b82",
"previous_git_commit": "3377575b90a02225fca689aaa44416d9d6fb21de",
"previous_fingerprint": "b122392fd2038bd2a9ed3faabcffff27573c1a5108a205721b1934e9378dc70f",
"previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/dashboard:3377575",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
"previous_git_commit_url": "https://github.com/cyber-dojo/dashboard/commit/3377575b90a02225fca689aaa44416d9d6fb21de",
"previous_trail_name": "3377575b90a02225fca689aaa44416d9d6fb21de",
"previous_template_reference_name": "dashboard"
},
"commit_lead_time": 807.0,
"flows": [
{
"flow_name": "dashboard-ci",
"trail_name": "b550f626d5e78e52842d84cf2a81af7dd1988b82",
"template_reference_name": "dashboard",
"git_commit": "b550f626d5e78e52842d84cf2a81af7dd1988b82",
"commit_url": "https://github.com/cyber-dojo/dashboard/commit/b550f626d5e78e52842d84cf2a81af7dd1988b82",
"git_commit_info": {
"sha1": "b550f626d5e78e52842d84cf2a81af7dd1988b82",
"message": "Simplify pull-request workflow job (#228)",
"author": "Jon Jagger <jon@kosli.com>",
"branch": "main",
"timestamp": 1729232793.0,
"url": "https://github.com/cyber-dojo/dashboard/commit/b550f626d5e78e52842d84cf2a81af7dd1988b82"
},
"html_url": "https://app.kosli.com/cyber-dojo/flows/dashboard-ci/artifacts/8fd8bba06e8453ed5326465c4ca9839ac82c10b60e4978c2cb60769c7ef02d6c?artifact_id=bfe7cb7e-5f3c-411f-b954-2447dd9e",
"flow_html_url": "https://app.kosli.com/cyber-dojo/flows/dashboard-ci",
"deployment_diff": {
"diff_url": "https://github.com/cyber-dojo/dashboard/compare/3377575b90a02225fca689aaa44416d9d6fb21de...b550f626d5e78e52842d84cf2a81af7dd1988b82",
"previous_git_commit": "3377575b90a02225fca689aaa44416d9d6fb21de",
"previous_fingerprint": "b122392fd2038bd2a9ed3faabcffff27573c1a5108a205721b1934e9378dc70f",
"previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/dashboard:3377575",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
"previous_git_commit_url": "https://github.com/cyber-dojo/dashboard/commit/3377575b90a02225fca689aaa44416d9d6fb21de",
"previous_trail_name": "3377575b90a02225fca689aaa44416d9d6fb21de",
"previous_template_reference_name": "dashboard"
},
"commit_lead_time": 807.0,
"artifact_compliance_in_flow": true,
"flow_reasons_for_non_compliance": []
}
]
},
{
"name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/creator:fbc4a4c",
"deployments": [],
"compliant": true,
"policy_decisions": [
{
"policy_id": "bb56942a-ebbc-4a51-ad7b-b1f83903",
"policy_version": 1,
"status": "COMPLIANT",
"rule_evaluations": [
{
"rule": {
"type": "provenance",
"definition": {
"required": true,
"exceptions": []
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "81645304-afb7-42e6-9dd5-3d9ab6f7",
"flow_id": "e4e08b57-e36e-4724-acc8-04e7e437",
"flow_name": "creator-ci",
"trail_id": "6e5df21a-d139-4440-b437-98af7946",
"trail_name": "fbc4a4c30f8cdccd153b359df1be86bcb0b75f51"
}
}
]
},
{
"rule": {
"type": "trail-compliance",
"definition": {
"required": true,
"exceptions": []
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "81645304-afb7-42e6-9dd5-3d9ab6f7",
"flow_id": "e4e08b57-e36e-4724-acc8-04e7e437",
"flow_name": "creator-ci",
"trail_id": "6e5df21a-d139-4440-b437-98af7946",
"trail_name": "fbc4a4c30f8cdccd153b359df1be86bcb0b75f51",
"artifact_status": "COMPLIANT"
}
}
]
}
]
},
{
"policy_id": "d4f22b17-1fac-4f36-a735-5a39f697",
"policy_version": 1,
"status": "COMPLIANT",
"rule_evaluations": [
{
"rule": {
"type": "provenance",
"definition": {
"required": true,
"exceptions": []
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "81645304-afb7-42e6-9dd5-3d9ab6f7",
"flow_id": "e4e08b57-e36e-4724-acc8-04e7e437",
"flow_name": "creator-ci",
"trail_id": "6e5df21a-d139-4440-b437-98af7946",
"trail_name": "fbc4a4c30f8cdccd153b359df1be86bcb0b75f51"
}
}
]
},
{
"rule": {
"type": "trail-compliance",
"definition": {
"required": false,
"exceptions": []
}
},
"satisfied": null,
"ignored": true,
"resolutions": []
},
{
"rule": {
"type": "attestation",
"definition": {
"if_condition": null,
"name": "snyk-container-scan",
"type": "snyk",
"must_be_compliant": true
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "81645304-afb7-42e6-9dd5-3d9ab6f7",
"flow_id": "e4e08b57-e36e-4724-acc8-04e7e437",
"flow_name": "creator-ci",
"trail_id": "6e5df21a-d139-4440-b437-98af7946",
"trail_name": "fbc4a4c30f8cdccd153b359df1be86bcb0b75f51",
"matching_attestation_id": "7f14b6e1-f6da-4e30-bf3c-c3323a5f",
"matching_attestation_name": "snyk-container-scan",
"matching_attestation_type": "snyk",
"matching_attestation_compliance": true
}
}
]
}
]
}
],
"reasons_for_incompliance": [],
"fingerprint": "c82ef46fe9ad37d29b4ed51294526a3f18ed17705c6f454d0392ba016ee69912",
"creationTimestamp": [
1729123399
],
"pods": null,
"annotation": {
"type": "unchanged",
"was": 1,
"now": 1
},
"flow_name": "creator-ci",
"git_commit": "fbc4a4c30f8cdccd153b359df1be86bcb0b75f51",
"commit_url": "https://gitlab.com/cyber-dojo/creator/-/commit/fbc4a4c30f8cdccd153b359df1be86bcb0b75f51",
"html_url": "https://app.kosli.com/cyber-dojo/flows/creator-ci/artifacts/c82ef46fe9ad37d29b4ed51294526a3f18ed17705c6f454d0392ba016ee69912?artifact_id=81645304-afb7-42e6-9dd5-3d9ab6f7",
"flow_html_url": "https://app.kosli.com/cyber-dojo/flows/creator-ci",
"deployment_diff": {
"diff_url": "https://gitlab.com/cyber-dojo/creator/-/compare/7ff46c28521c9dfe4aafb0d22a401a714b45fa26...fbc4a4c30f8cdccd153b359df1be86bcb0b75f51",
"previous_git_commit": "7ff46c28521c9dfe4aafb0d22a401a714b45fa26",
"previous_fingerprint": "ea1c8dbb1ce312c27fa9a91c3943815c3293da8cecf8f97527c56d66259242f9",
"previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/creator:7ff46c2",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
"previous_git_commit_url": "https://gitlab.com/cyber-dojo/creator/-/commit/7ff46c28521c9dfe4aafb0d22a401a714b45fa26",
"previous_trail_name": "7ff46c28521c9dfe4aafb0d22a401a714b45fa26",
"previous_template_reference_name": "creator"
},
"commit_lead_time": 1810.0,
"flows": [
{
"flow_name": "creator-ci",
"trail_name": "fbc4a4c30f8cdccd153b359df1be86bcb0b75f51",
"template_reference_name": "creator",
"git_commit": "fbc4a4c30f8cdccd153b359df1be86bcb0b75f51",
"commit_url": "https://gitlab.com/cyber-dojo/creator/-/commit/fbc4a4c30f8cdccd153b359df1be86bcb0b75f51",
"git_commit_info": {
"sha1": "fbc4a4c30f8cdccd153b359df1be86bcb0b75f51",
"message": "Merge branch 'update-container-startup-check' into 'main'\n\nUpdate container startup check\n\nSee merge request cyber-dojo/creator!146",
"author": "Jon Jagger <jrbjagger@googlemail.com>",
"branch": "main",
"timestamp": 1728306291.0,
"url": "https://gitlab.com/cyber-dojo/creator/-/commit/fbc4a4c30f8cdccd153b359df1be86bcb0b75f51"
},
"html_url": "https://app.kosli.com/cyber-dojo/flows/creator-ci/artifacts/c82ef46fe9ad37d29b4ed51294526a3f18ed17705c6f454d0392ba016ee69912?artifact_id=81645304-afb7-42e6-9dd5-3d9ab6f7",
"flow_html_url": "https://app.kosli.com/cyber-dojo/flows/creator-ci",
"deployment_diff": {
"diff_url": "https://gitlab.com/cyber-dojo/creator/-/compare/7ff46c28521c9dfe4aafb0d22a401a714b45fa26...fbc4a4c30f8cdccd153b359df1be86bcb0b75f51",
"previous_git_commit": "7ff46c28521c9dfe4aafb0d22a401a714b45fa26",
"previous_fingerprint": "ea1c8dbb1ce312c27fa9a91c3943815c3293da8cecf8f97527c56d66259242f9",
"previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/creator:7ff46c2",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
"previous_git_commit_url": "https://gitlab.com/cyber-dojo/creator/-/commit/7ff46c28521c9dfe4aafb0d22a401a714b45fa26",
"previous_trail_name": "7ff46c28521c9dfe4aafb0d22a401a714b45fa26",
"previous_template_reference_name": "creator"
},
"commit_lead_time": 1810.0,
"artifact_compliance_in_flow": true,
"flow_reasons_for_non_compliance": []
}
]
}
],
"applied_policies": [
{
"id": "bb56942a-ebbc-4a51-ad7b-b1f83903",
"name": "default-policy",
"version": 1,
"policy_dump": {
"schema_version": "1",
"artifacts": {
"provenance": {
"required": true,
"exceptions": []
},
"trail_compliance": {
"required": true,
"exceptions": []
},
"attestations": []
}
},
"failing_artifacts": []
},
{
"id": "d4f22b17-1fac-4f36-a735-5a39f697",
"name": "snyk-policy",
"version": 1,
"policy_dump": {
"schema_version": "1",
"artifacts": {
"provenance": {
"required": true,
"exceptions": []
},
"trail_compliance": {
"required": false,
"exceptions": []
},
"attestations": [
{
"if_condition": null,
"name": "snyk-container-scan",
"type": "snyk",
"must_be_compliant": true
}
]
}
},
"failing_artifacts": []
}
]
}