{
"index": 3671,
"is_latest": true,
"next_snapshot_timestamp": null,
"artifact_compliance_count": {
"true": 9,
"false": 1,
"null": 0
},
"timestamp": 1745246818.4573267,
"type": "ECS",
"compliant": false,
"html_url": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/3671",
"artifacts": [
{
"name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/runner:cd853b4@sha256:399730b2e086c0d38c71dde8b93ca3611f184d70a060bbfcb96a94b68298f35a",
"deployments": [],
"compliant": true,
"policy_decisions": [
{
"policy_id": "0b0c4d5a-cc1f-4725-8f97-af256289",
"policy_version": 1,
"status": "COMPLIANT",
"rule_evaluations": [
{
"rule": {
"type": "provenance",
"definition": {
"required": false,
"exceptions": []
}
},
"ignored": true,
"resolutions": [
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "a6f58960-8aab-4d4b-ac14-6c7ab7a1",
"flow_id": "a81e8c6d-bb00-474f-b986-a6cb9b08",
"flow_name": "runner-ci",
"trail_id": "7ade1462-ac08-495e-99df-3c0e20e5",
"trail_name": "cd853b440efd43f63541ba1e86e5c3ecf3e447cf"
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "b2937613-c9f9-491f-a341-f6342e6d",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "bbb2d3bb-e2b1-4438-bc0b-e5604882",
"trail_name": "promotion-28"
}
}
]
},
{
"rule": {
"type": "trail-compliance",
"definition": {
"required": false,
"exceptions": []
}
},
"ignored": true,
"resolutions": [
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "a6f58960-8aab-4d4b-ac14-6c7ab7a1",
"flow_id": "a81e8c6d-bb00-474f-b986-a6cb9b08",
"flow_name": "runner-ci",
"trail_id": "7ade1462-ac08-495e-99df-3c0e20e5",
"trail_name": "cd853b440efd43f63541ba1e86e5c3ecf3e447cf",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "b2937613-c9f9-491f-a341-f6342e6d",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "bbb2d3bb-e2b1-4438-bc0b-e5604882",
"trail_name": "promotion-28",
"artifact_status": "COMPLIANT"
}
}
]
},
{
"rule": {
"type": "attestation",
"definition": {
"if_condition": {
"text": "flow.tags.kind == \"microservice\""
},
"name": "*",
"type": "pull_request",
"must_be_compliant": true
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "a6f58960-8aab-4d4b-ac14-6c7ab7a1",
"flow_id": "a81e8c6d-bb00-474f-b986-a6cb9b08",
"flow_name": "runner-ci",
"trail_id": "7ade1462-ac08-495e-99df-3c0e20e5",
"trail_name": "cd853b440efd43f63541ba1e86e5c3ecf3e447cf",
"matching_attestation_id": "53ee7896-74b2-4f61-8fab-8c22e750",
"matching_attestation_name": "pull-request",
"matching_attestation_type": "pull_request",
"matching_attestation_compliance": true
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "b2937613-c9f9-491f-a341-f6342e6d",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "bbb2d3bb-e2b1-4438-bc0b-e5604882",
"trail_name": "promotion-28"
}
}
]
}
]
},
{
"policy_id": "5da6b9e4-a7ca-4e01-b956-f1230198",
"policy_version": 1,
"status": "COMPLIANT",
"rule_evaluations": [
{
"rule": {
"type": "provenance",
"definition": {
"required": false,
"exceptions": []
}
},
"ignored": true,
"resolutions": [
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "a6f58960-8aab-4d4b-ac14-6c7ab7a1",
"flow_id": "a81e8c6d-bb00-474f-b986-a6cb9b08",
"flow_name": "runner-ci",
"trail_id": "7ade1462-ac08-495e-99df-3c0e20e5",
"trail_name": "cd853b440efd43f63541ba1e86e5c3ecf3e447cf"
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "b2937613-c9f9-491f-a341-f6342e6d",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "bbb2d3bb-e2b1-4438-bc0b-e5604882",
"trail_name": "promotion-28"
}
}
]
},
{
"rule": {
"type": "trail-compliance",
"definition": {
"required": true,
"exceptions": []
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "a6f58960-8aab-4d4b-ac14-6c7ab7a1",
"flow_id": "a81e8c6d-bb00-474f-b986-a6cb9b08",
"flow_name": "runner-ci",
"trail_id": "7ade1462-ac08-495e-99df-3c0e20e5",
"trail_name": "cd853b440efd43f63541ba1e86e5c3ecf3e447cf",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_satisfied",
"context": {
"artifact_id": "b2937613-c9f9-491f-a341-f6342e6d",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "bbb2d3bb-e2b1-4438-bc0b-e5604882",
"trail_name": "promotion-28",
"artifact_status": "COMPLIANT"
}
}
]
}
]
},
{
"policy_id": "a1cb6673-a70d-475c-98c1-77d8a598",
"policy_version": 1,
"status": "COMPLIANT",
"rule_evaluations": [
{
"rule": {
"type": "provenance",
"definition": {
"required": false,
"exceptions": []
}
},
"ignored": true,
"resolutions": [
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "a6f58960-8aab-4d4b-ac14-6c7ab7a1",
"flow_id": "a81e8c6d-bb00-474f-b986-a6cb9b08",
"flow_name": "runner-ci",
"trail_id": "7ade1462-ac08-495e-99df-3c0e20e5",
"trail_name": "cd853b440efd43f63541ba1e86e5c3ecf3e447cf"
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "b2937613-c9f9-491f-a341-f6342e6d",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "bbb2d3bb-e2b1-4438-bc0b-e5604882",
"trail_name": "promotion-28"
}
}
]
},
{
"rule": {
"type": "trail-compliance",
"definition": {
"required": false,
"exceptions": []
}
},
"ignored": true,
"resolutions": [
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "a6f58960-8aab-4d4b-ac14-6c7ab7a1",
"flow_id": "a81e8c6d-bb00-474f-b986-a6cb9b08",
"flow_name": "runner-ci",
"trail_id": "7ade1462-ac08-495e-99df-3c0e20e5",
"trail_name": "cd853b440efd43f63541ba1e86e5c3ecf3e447cf",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "b2937613-c9f9-491f-a341-f6342e6d",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "bbb2d3bb-e2b1-4438-bc0b-e5604882",
"trail_name": "promotion-28",
"artifact_status": "COMPLIANT"
}
}
]
},
{
"rule": {
"type": "attestation",
"definition": {
"if_condition": {
"text": "flow.tags.kind == \"microservice\" or flow.name == \"aws-snyk-scan\""
},
"name": "*",
"type": "snyk",
"must_be_compliant": true
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "a6f58960-8aab-4d4b-ac14-6c7ab7a1",
"flow_id": "a81e8c6d-bb00-474f-b986-a6cb9b08",
"flow_name": "runner-ci",
"trail_id": "7ade1462-ac08-495e-99df-3c0e20e5",
"trail_name": "cd853b440efd43f63541ba1e86e5c3ecf3e447cf",
"matching_attestation_id": "7f7732d2-662b-477d-8b71-7bc39904",
"matching_attestation_name": "snyk-container-scan",
"matching_attestation_type": "snyk",
"matching_attestation_compliance": true
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "b2937613-c9f9-491f-a341-f6342e6d",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "bbb2d3bb-e2b1-4438-bc0b-e5604882",
"trail_name": "promotion-28"
}
}
]
}
]
},
{
"policy_id": "d50367a3-f3bb-47f1-af16-d03e9166",
"policy_version": 2,
"status": "COMPLIANT",
"rule_evaluations": [
{
"rule": {
"type": "provenance",
"definition": {
"required": true,
"exceptions": []
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "a6f58960-8aab-4d4b-ac14-6c7ab7a1",
"flow_id": "a81e8c6d-bb00-474f-b986-a6cb9b08",
"flow_name": "runner-ci",
"trail_id": "7ade1462-ac08-495e-99df-3c0e20e5",
"trail_name": "cd853b440efd43f63541ba1e86e5c3ecf3e447cf"
}
},
{
"type": "rule_satisfied",
"context": {
"artifact_id": "b2937613-c9f9-491f-a341-f6342e6d",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "bbb2d3bb-e2b1-4438-bc0b-e5604882",
"trail_name": "promotion-28"
}
}
]
},
{
"rule": {
"type": "trail-compliance",
"definition": {
"required": false,
"exceptions": []
}
},
"ignored": true,
"resolutions": [
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "a6f58960-8aab-4d4b-ac14-6c7ab7a1",
"flow_id": "a81e8c6d-bb00-474f-b986-a6cb9b08",
"flow_name": "runner-ci",
"trail_id": "7ade1462-ac08-495e-99df-3c0e20e5",
"trail_name": "cd853b440efd43f63541ba1e86e5c3ecf3e447cf",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "b2937613-c9f9-491f-a341-f6342e6d",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "bbb2d3bb-e2b1-4438-bc0b-e5604882",
"trail_name": "promotion-28",
"artifact_status": "COMPLIANT"
}
}
]
}
]
}
],
"reasons_for_incompliance": [],
"fingerprint": "399730b2e086c0d38c71dde8b93ca3611f184d70a060bbfcb96a94b68298f35a",
"creationTimestamp": [
1745246723,
1745246725,
1745246729
],
"pods": null,
"annotation": {
"type": "unchanged",
"was": 3,
"now": 3
},
"flow_name": "runner-ci",
"git_commit": "cd853b440efd43f63541ba1e86e5c3ecf3e447cf",
"commit_url": "https://github.com/cyber-dojo/runner/commit/cd853b440efd43f63541ba1e86e5c3ecf3e447cf",
"html_url": "https://app.kosli.com/cyber-dojo/flows/runner-ci/artifacts/399730b2e086c0d38c71dde8b93ca3611f184d70a060bbfcb96a94b68298f35a?artifact_id=a6f58960-8aab-4d4b-ac14-6c7ab7a1",
"flow_html_url": "https://app.kosli.com/cyber-dojo/flows/runner-ci",
"deployment_diff": {
"diff_url": "https://github.com/cyber-dojo/runner/compare/b93720544ec7c29c64640755739337f02714c502...cd853b440efd43f63541ba1e86e5c3ecf3e447cf",
"previous_git_commit": "b93720544ec7c29c64640755739337f02714c502",
"previous_fingerprint": "8a3cdd88bc576ab09f77ba57dd0affacb85494dac77425cbac751b283ae1a24b",
"previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/runner:b937205@sha256:8a3cdd88bc576ab09f77ba57dd0affacb85494dac77425cbac751b283ae1a24b",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
"previous_git_commit_url": "https://github.com/cyber-dojo/runner/commit/b93720544ec7c29c64640755739337f02714c502",
"previous_trail_name": "b93720544ec7c29c64640755739337f02714c502",
"previous_template_reference_name": "runner"
},
"commit_lead_time": 113380.0,
"flows": [
{
"flow_name": "runner-ci",
"trail_name": "cd853b440efd43f63541ba1e86e5c3ecf3e447cf",
"template_reference_name": "runner",
"git_commit": "cd853b440efd43f63541ba1e86e5c3ecf3e447cf",
"commit_url": "https://github.com/cyber-dojo/runner/commit/cd853b440efd43f63541ba1e86e5c3ecf3e447cf",
"git_commit_info": {
"sha1": "cd853b440efd43f63541ba1e86e5c3ecf3e447cf",
"message": "Merge pull request #122 from cyber-dojo/delete-dead-file\n\nDelete dead file",
"author": "Jon Jagger <jon@kosli.com>",
"branch": "",
"timestamp": 1745133343.0,
"url": "https://github.com/cyber-dojo/runner/commit/cd853b440efd43f63541ba1e86e5c3ecf3e447cf"
},
"html_url": "https://app.kosli.com/cyber-dojo/flows/runner-ci/artifacts/399730b2e086c0d38c71dde8b93ca3611f184d70a060bbfcb96a94b68298f35a?artifact_id=a6f58960-8aab-4d4b-ac14-6c7ab7a1",
"flow_html_url": "https://app.kosli.com/cyber-dojo/flows/runner-ci",
"deployment_diff": {
"diff_url": "https://github.com/cyber-dojo/runner/compare/b93720544ec7c29c64640755739337f02714c502...cd853b440efd43f63541ba1e86e5c3ecf3e447cf",
"previous_git_commit": "b93720544ec7c29c64640755739337f02714c502",
"previous_fingerprint": "8a3cdd88bc576ab09f77ba57dd0affacb85494dac77425cbac751b283ae1a24b",
"previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/runner:b937205@sha256:8a3cdd88bc576ab09f77ba57dd0affacb85494dac77425cbac751b283ae1a24b",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
"previous_git_commit_url": "https://github.com/cyber-dojo/runner/commit/b93720544ec7c29c64640755739337f02714c502",
"previous_trail_name": "b93720544ec7c29c64640755739337f02714c502",
"previous_template_reference_name": "runner"
},
"commit_lead_time": 113380.0,
"artifact_compliance_in_flow": true,
"flow_reasons_for_non_compliance": []
},
{
"flow_name": "production-promotion",
"trail_name": "promotion-28",
"template_reference_name": "runner",
"git_commit": "5b2bcf60826ba250234cfb58a8c7261964fc4aa5",
"commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/5b2bcf60826ba250234cfb58a8c7261964fc4aa5",
"git_commit_info": {
"sha1": "5b2bcf60826ba250234cfb58a8c7261964fc4aa5",
"message": "Reinstate sdlc-control-gate",
"author": "JonJagger <jon@kosli.com>",
"branch": "main",
"timestamp": 1745058712.0,
"url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/5b2bcf60826ba250234cfb58a8c7261964fc4aa5"
},
"html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion/artifacts/399730b2e086c0d38c71dde8b93ca3611f184d70a060bbfcb96a94b68298f35a?artifact_id=b2937613-c9f9-491f-a341-f6342e6d",
"flow_html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion",
"deployment_diff": {
"diff_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/compare/5b2bcf60826ba250234cfb58a8c7261964fc4aa5...5b2bcf60826ba250234cfb58a8c7261964fc4aa5",
"previous_git_commit": "5b2bcf60826ba250234cfb58a8c7261964fc4aa5",
"previous_fingerprint": "8a3cdd88bc576ab09f77ba57dd0affacb85494dac77425cbac751b283ae1a24b",
"previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/runner:b937205@sha256:8a3cdd88bc576ab09f77ba57dd0affacb85494dac77425cbac751b283ae1a24b",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
"previous_git_commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/5b2bcf60826ba250234cfb58a8c7261964fc4aa5",
"previous_trail_name": "promotion-26",
"previous_template_reference_name": "runner"
},
"commit_lead_time": 188011.0,
"artifact_compliance_in_flow": true,
"flow_reasons_for_non_compliance": []
}
]
},
{
"name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/dashboard:8b04521@sha256:0851c51de1f328fec3dc1433b692cf5b1e4cd40340d59c5e1f235c8f9d224946",
"deployments": [],
"compliant": true,
"policy_decisions": [
{
"policy_id": "0b0c4d5a-cc1f-4725-8f97-af256289",
"policy_version": 1,
"status": "COMPLIANT",
"rule_evaluations": [
{
"rule": {
"type": "provenance",
"definition": {
"required": false,
"exceptions": []
}
},
"ignored": true,
"resolutions": [
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "3a0bced9-6c38-4ccc-b337-8f8899cd",
"flow_id": "f60c8f3f-67cd-4496-8e17-ed6fdb1e",
"flow_name": "dashboard-ci",
"trail_id": "7f5424e5-70ef-4b15-a245-58b1eac6",
"trail_name": "8b04521ec68b4c03d0da474df4b53679329ed23e"
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "515d8c28-9e37-45c4-a141-66260309",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "bbb2d3bb-e2b1-4438-bc0b-e5604882",
"trail_name": "promotion-28"
}
}
]
},
{
"rule": {
"type": "trail-compliance",
"definition": {
"required": false,
"exceptions": []
}
},
"ignored": true,
"resolutions": [
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "3a0bced9-6c38-4ccc-b337-8f8899cd",
"flow_id": "f60c8f3f-67cd-4496-8e17-ed6fdb1e",
"flow_name": "dashboard-ci",
"trail_id": "7f5424e5-70ef-4b15-a245-58b1eac6",
"trail_name": "8b04521ec68b4c03d0da474df4b53679329ed23e",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "515d8c28-9e37-45c4-a141-66260309",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "bbb2d3bb-e2b1-4438-bc0b-e5604882",
"trail_name": "promotion-28",
"artifact_status": "COMPLIANT"
}
}
]
},
{
"rule": {
"type": "attestation",
"definition": {
"if_condition": {
"text": "flow.tags.kind == \"microservice\""
},
"name": "*",
"type": "pull_request",
"must_be_compliant": true
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "3a0bced9-6c38-4ccc-b337-8f8899cd",
"flow_id": "f60c8f3f-67cd-4496-8e17-ed6fdb1e",
"flow_name": "dashboard-ci",
"trail_id": "7f5424e5-70ef-4b15-a245-58b1eac6",
"trail_name": "8b04521ec68b4c03d0da474df4b53679329ed23e",
"matching_attestation_id": "c2b6ab90-6ae3-4c9d-a2fb-42cfbc0c",
"matching_attestation_name": "pull-request",
"matching_attestation_type": "pull_request",
"matching_attestation_compliance": true
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "515d8c28-9e37-45c4-a141-66260309",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "bbb2d3bb-e2b1-4438-bc0b-e5604882",
"trail_name": "promotion-28"
}
}
]
}
]
},
{
"policy_id": "5da6b9e4-a7ca-4e01-b956-f1230198",
"policy_version": 1,
"status": "COMPLIANT",
"rule_evaluations": [
{
"rule": {
"type": "provenance",
"definition": {
"required": false,
"exceptions": []
}
},
"ignored": true,
"resolutions": [
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "3a0bced9-6c38-4ccc-b337-8f8899cd",
"flow_id": "f60c8f3f-67cd-4496-8e17-ed6fdb1e",
"flow_name": "dashboard-ci",
"trail_id": "7f5424e5-70ef-4b15-a245-58b1eac6",
"trail_name": "8b04521ec68b4c03d0da474df4b53679329ed23e"
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "515d8c28-9e37-45c4-a141-66260309",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "bbb2d3bb-e2b1-4438-bc0b-e5604882",
"trail_name": "promotion-28"
}
}
]
},
{
"rule": {
"type": "trail-compliance",
"definition": {
"required": true,
"exceptions": []
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "3a0bced9-6c38-4ccc-b337-8f8899cd",
"flow_id": "f60c8f3f-67cd-4496-8e17-ed6fdb1e",
"flow_name": "dashboard-ci",
"trail_id": "7f5424e5-70ef-4b15-a245-58b1eac6",
"trail_name": "8b04521ec68b4c03d0da474df4b53679329ed23e",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_satisfied",
"context": {
"artifact_id": "515d8c28-9e37-45c4-a141-66260309",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "bbb2d3bb-e2b1-4438-bc0b-e5604882",
"trail_name": "promotion-28",
"artifact_status": "COMPLIANT"
}
}
]
}
]
},
{
"policy_id": "a1cb6673-a70d-475c-98c1-77d8a598",
"policy_version": 1,
"status": "COMPLIANT",
"rule_evaluations": [
{
"rule": {
"type": "provenance",
"definition": {
"required": false,
"exceptions": []
}
},
"ignored": true,
"resolutions": [
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "3a0bced9-6c38-4ccc-b337-8f8899cd",
"flow_id": "f60c8f3f-67cd-4496-8e17-ed6fdb1e",
"flow_name": "dashboard-ci",
"trail_id": "7f5424e5-70ef-4b15-a245-58b1eac6",
"trail_name": "8b04521ec68b4c03d0da474df4b53679329ed23e"
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "515d8c28-9e37-45c4-a141-66260309",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "bbb2d3bb-e2b1-4438-bc0b-e5604882",
"trail_name": "promotion-28"
}
}
]
},
{
"rule": {
"type": "trail-compliance",
"definition": {
"required": false,
"exceptions": []
}
},
"ignored": true,
"resolutions": [
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "3a0bced9-6c38-4ccc-b337-8f8899cd",
"flow_id": "f60c8f3f-67cd-4496-8e17-ed6fdb1e",
"flow_name": "dashboard-ci",
"trail_id": "7f5424e5-70ef-4b15-a245-58b1eac6",
"trail_name": "8b04521ec68b4c03d0da474df4b53679329ed23e",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "515d8c28-9e37-45c4-a141-66260309",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "bbb2d3bb-e2b1-4438-bc0b-e5604882",
"trail_name": "promotion-28",
"artifact_status": "COMPLIANT"
}
}
]
},
{
"rule": {
"type": "attestation",
"definition": {
"if_condition": {
"text": "flow.tags.kind == \"microservice\" or flow.name == \"aws-snyk-scan\""
},
"name": "*",
"type": "snyk",
"must_be_compliant": true
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "3a0bced9-6c38-4ccc-b337-8f8899cd",
"flow_id": "f60c8f3f-67cd-4496-8e17-ed6fdb1e",
"flow_name": "dashboard-ci",
"trail_id": "7f5424e5-70ef-4b15-a245-58b1eac6",
"trail_name": "8b04521ec68b4c03d0da474df4b53679329ed23e",
"matching_attestation_id": "8744eb97-66ff-4720-8ad2-89a01dcc",
"matching_attestation_name": "snyk-container-scan",
"matching_attestation_type": "snyk",
"matching_attestation_compliance": true
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "515d8c28-9e37-45c4-a141-66260309",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "bbb2d3bb-e2b1-4438-bc0b-e5604882",
"trail_name": "promotion-28"
}
}
]
}
]
},
{
"policy_id": "d50367a3-f3bb-47f1-af16-d03e9166",
"policy_version": 2,
"status": "COMPLIANT",
"rule_evaluations": [
{
"rule": {
"type": "provenance",
"definition": {
"required": true,
"exceptions": []
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "3a0bced9-6c38-4ccc-b337-8f8899cd",
"flow_id": "f60c8f3f-67cd-4496-8e17-ed6fdb1e",
"flow_name": "dashboard-ci",
"trail_id": "7f5424e5-70ef-4b15-a245-58b1eac6",
"trail_name": "8b04521ec68b4c03d0da474df4b53679329ed23e"
}
},
{
"type": "rule_satisfied",
"context": {
"artifact_id": "515d8c28-9e37-45c4-a141-66260309",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "bbb2d3bb-e2b1-4438-bc0b-e5604882",
"trail_name": "promotion-28"
}
}
]
},
{
"rule": {
"type": "trail-compliance",
"definition": {
"required": false,
"exceptions": []
}
},
"ignored": true,
"resolutions": [
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "3a0bced9-6c38-4ccc-b337-8f8899cd",
"flow_id": "f60c8f3f-67cd-4496-8e17-ed6fdb1e",
"flow_name": "dashboard-ci",
"trail_id": "7f5424e5-70ef-4b15-a245-58b1eac6",
"trail_name": "8b04521ec68b4c03d0da474df4b53679329ed23e",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "515d8c28-9e37-45c4-a141-66260309",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "bbb2d3bb-e2b1-4438-bc0b-e5604882",
"trail_name": "promotion-28",
"artifact_status": "COMPLIANT"
}
}
]
}
]
}
],
"reasons_for_incompliance": [],
"fingerprint": "0851c51de1f328fec3dc1433b692cf5b1e4cd40340d59c5e1f235c8f9d224946",
"creationTimestamp": [
1745246705
],
"pods": null,
"annotation": {
"type": "unchanged",
"was": 1,
"now": 1
},
"flow_name": "dashboard-ci",
"git_commit": "8b04521ec68b4c03d0da474df4b53679329ed23e",
"commit_url": "https://github.com/cyber-dojo/dashboard/commit/8b04521ec68b4c03d0da474df4b53679329ed23e",
"html_url": "https://app.kosli.com/cyber-dojo/flows/dashboard-ci/artifacts/0851c51de1f328fec3dc1433b692cf5b1e4cd40340d59c5e1f235c8f9d224946?artifact_id=3a0bced9-6c38-4ccc-b337-8f8899cd",
"flow_html_url": "https://app.kosli.com/cyber-dojo/flows/dashboard-ci",
"deployment_diff": {
"diff_url": "https://github.com/cyber-dojo/dashboard/compare/1d840ea53da9f607929f026ef69f24270a50cff4...8b04521ec68b4c03d0da474df4b53679329ed23e",
"previous_git_commit": "1d840ea53da9f607929f026ef69f24270a50cff4",
"previous_fingerprint": "0b285c677f46024299ef39ab0ce5a3f4769f6b8985d2d33da4feeae29169b7cd",
"previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/dashboard:1d840ea@sha256:0b285c677f46024299ef39ab0ce5a3f4769f6b8985d2d33da4feeae29169b7cd",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
"previous_git_commit_url": "https://github.com/cyber-dojo/dashboard/commit/1d840ea53da9f607929f026ef69f24270a50cff4",
"previous_trail_name": "1d840ea53da9f607929f026ef69f24270a50cff4",
"previous_template_reference_name": "dashboard"
},
"commit_lead_time": 1267.0,
"flows": [
{
"flow_name": "dashboard-ci",
"trail_name": "8b04521ec68b4c03d0da474df4b53679329ed23e",
"template_reference_name": "dashboard",
"git_commit": "8b04521ec68b4c03d0da474df4b53679329ed23e",
"commit_url": "https://github.com/cyber-dojo/dashboard/commit/8b04521ec68b4c03d0da474df4b53679329ed23e",
"git_commit_info": {
"sha1": "8b04521ec68b4c03d0da474df4b53679329ed23e",
"message": "Use composite workflow to download build docker image (#276)\n\n* Use composite workflow to download build docker image\n\n* Add debug set-x\n\n* Add debug set-x\n\n* Add more debug statements\n\n* Try docker load command\n\n* Run workflow\n\n* Run workflow\n\n* Fix bad input expression\n\n* Run workflow\n\n* Run workflow\n\n* Run workflow\n\n* Use composite workflow to download built image",
"author": "Jon Jagger <jon@kosli.com>",
"branch": "",
"timestamp": 1745245438.0,
"url": "https://github.com/cyber-dojo/dashboard/commit/8b04521ec68b4c03d0da474df4b53679329ed23e"
},
"html_url": "https://app.kosli.com/cyber-dojo/flows/dashboard-ci/artifacts/0851c51de1f328fec3dc1433b692cf5b1e4cd40340d59c5e1f235c8f9d224946?artifact_id=3a0bced9-6c38-4ccc-b337-8f8899cd",
"flow_html_url": "https://app.kosli.com/cyber-dojo/flows/dashboard-ci",
"deployment_diff": {
"diff_url": "https://github.com/cyber-dojo/dashboard/compare/1d840ea53da9f607929f026ef69f24270a50cff4...8b04521ec68b4c03d0da474df4b53679329ed23e",
"previous_git_commit": "1d840ea53da9f607929f026ef69f24270a50cff4",
"previous_fingerprint": "0b285c677f46024299ef39ab0ce5a3f4769f6b8985d2d33da4feeae29169b7cd",
"previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/dashboard:1d840ea@sha256:0b285c677f46024299ef39ab0ce5a3f4769f6b8985d2d33da4feeae29169b7cd",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
"previous_git_commit_url": "https://github.com/cyber-dojo/dashboard/commit/1d840ea53da9f607929f026ef69f24270a50cff4",
"previous_trail_name": "1d840ea53da9f607929f026ef69f24270a50cff4",
"previous_template_reference_name": "dashboard"
},
"commit_lead_time": 1267.0,
"artifact_compliance_in_flow": true,
"flow_reasons_for_non_compliance": []
},
{
"flow_name": "production-promotion",
"trail_name": "promotion-28",
"template_reference_name": "dashboard",
"git_commit": "5b2bcf60826ba250234cfb58a8c7261964fc4aa5",
"commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/5b2bcf60826ba250234cfb58a8c7261964fc4aa5",
"git_commit_info": {
"sha1": "5b2bcf60826ba250234cfb58a8c7261964fc4aa5",
"message": "Reinstate sdlc-control-gate",
"author": "JonJagger <jon@kosli.com>",
"branch": "main",
"timestamp": 1745058712.0,
"url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/5b2bcf60826ba250234cfb58a8c7261964fc4aa5"
},
"html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion/artifacts/0851c51de1f328fec3dc1433b692cf5b1e4cd40340d59c5e1f235c8f9d224946?artifact_id=515d8c28-9e37-45c4-a141-66260309",
"flow_html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion",
"deployment_diff": {
"diff_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/compare/5b2bcf60826ba250234cfb58a8c7261964fc4aa5...5b2bcf60826ba250234cfb58a8c7261964fc4aa5",
"previous_git_commit": "5b2bcf60826ba250234cfb58a8c7261964fc4aa5",
"previous_fingerprint": "0b285c677f46024299ef39ab0ce5a3f4769f6b8985d2d33da4feeae29169b7cd",
"previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/dashboard:1d840ea@sha256:0b285c677f46024299ef39ab0ce5a3f4769f6b8985d2d33da4feeae29169b7cd",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
"previous_git_commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/5b2bcf60826ba250234cfb58a8c7261964fc4aa5",
"previous_trail_name": "promotion-26",
"previous_template_reference_name": "dashboard"
},
"commit_lead_time": 187993.0,
"artifact_compliance_in_flow": true,
"flow_reasons_for_non_compliance": []
}
]
},
{
"name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/nginx:8153001@sha256:fdec8a0db427568546194dbf87681c1c6ae3071d3db1bf2bce1de0502a52995c",
"deployments": [],
"compliant": true,
"policy_decisions": [
{
"policy_id": "0b0c4d5a-cc1f-4725-8f97-af256289",
"policy_version": 1,
"status": "COMPLIANT",
"rule_evaluations": [
{
"rule": {
"type": "provenance",
"definition": {
"required": false,
"exceptions": []
}
},
"ignored": true,
"resolutions": [
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "339df1d5-762c-4214-84fb-5388b424",
"flow_id": "28447c7d-904b-4594-8b05-88d5d938",
"flow_name": "nginx-ci",
"trail_id": "eca94e88-4c4b-4041-a789-0824d654",
"trail_name": "81530019506a14028a247b879d1cc379ec732a27"
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "a63a7463-6bbb-4088-833b-66ce68e1",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "bbb2d3bb-e2b1-4438-bc0b-e5604882",
"trail_name": "promotion-28"
}
}
]
},
{
"rule": {
"type": "trail-compliance",
"definition": {
"required": false,
"exceptions": []
}
},
"ignored": true,
"resolutions": [
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "339df1d5-762c-4214-84fb-5388b424",
"flow_id": "28447c7d-904b-4594-8b05-88d5d938",
"flow_name": "nginx-ci",
"trail_id": "eca94e88-4c4b-4041-a789-0824d654",
"trail_name": "81530019506a14028a247b879d1cc379ec732a27",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "a63a7463-6bbb-4088-833b-66ce68e1",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "bbb2d3bb-e2b1-4438-bc0b-e5604882",
"trail_name": "promotion-28",
"artifact_status": "COMPLIANT"
}
}
]
},
{
"rule": {
"type": "attestation",
"definition": {
"if_condition": {
"text": "flow.tags.kind == \"microservice\""
},
"name": "*",
"type": "pull_request",
"must_be_compliant": true
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "339df1d5-762c-4214-84fb-5388b424",
"flow_id": "28447c7d-904b-4594-8b05-88d5d938",
"flow_name": "nginx-ci",
"trail_id": "eca94e88-4c4b-4041-a789-0824d654",
"trail_name": "81530019506a14028a247b879d1cc379ec732a27",
"matching_attestation_id": "2b484a22-4cc8-4851-943f-9d50f3da",
"matching_attestation_name": "pull-request",
"matching_attestation_type": "pull_request",
"matching_attestation_compliance": true
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "a63a7463-6bbb-4088-833b-66ce68e1",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "bbb2d3bb-e2b1-4438-bc0b-e5604882",
"trail_name": "promotion-28"
}
}
]
}
]
},
{
"policy_id": "5da6b9e4-a7ca-4e01-b956-f1230198",
"policy_version": 1,
"status": "COMPLIANT",
"rule_evaluations": [
{
"rule": {
"type": "provenance",
"definition": {
"required": false,
"exceptions": []
}
},
"ignored": true,
"resolutions": [
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "339df1d5-762c-4214-84fb-5388b424",
"flow_id": "28447c7d-904b-4594-8b05-88d5d938",
"flow_name": "nginx-ci",
"trail_id": "eca94e88-4c4b-4041-a789-0824d654",
"trail_name": "81530019506a14028a247b879d1cc379ec732a27"
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "a63a7463-6bbb-4088-833b-66ce68e1",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "bbb2d3bb-e2b1-4438-bc0b-e5604882",
"trail_name": "promotion-28"
}
}
]
},
{
"rule": {
"type": "trail-compliance",
"definition": {
"required": true,
"exceptions": []
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "339df1d5-762c-4214-84fb-5388b424",
"flow_id": "28447c7d-904b-4594-8b05-88d5d938",
"flow_name": "nginx-ci",
"trail_id": "eca94e88-4c4b-4041-a789-0824d654",
"trail_name": "81530019506a14028a247b879d1cc379ec732a27",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_satisfied",
"context": {
"artifact_id": "a63a7463-6bbb-4088-833b-66ce68e1",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "bbb2d3bb-e2b1-4438-bc0b-e5604882",
"trail_name": "promotion-28",
"artifact_status": "COMPLIANT"
}
}
]
}
]
},
{
"policy_id": "a1cb6673-a70d-475c-98c1-77d8a598",
"policy_version": 1,
"status": "COMPLIANT",
"rule_evaluations": [
{
"rule": {
"type": "provenance",
"definition": {
"required": false,
"exceptions": []
}
},
"ignored": true,
"resolutions": [
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "339df1d5-762c-4214-84fb-5388b424",
"flow_id": "28447c7d-904b-4594-8b05-88d5d938",
"flow_name": "nginx-ci",
"trail_id": "eca94e88-4c4b-4041-a789-0824d654",
"trail_name": "81530019506a14028a247b879d1cc379ec732a27"
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "a63a7463-6bbb-4088-833b-66ce68e1",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "bbb2d3bb-e2b1-4438-bc0b-e5604882",
"trail_name": "promotion-28"
}
}
]
},
{
"rule": {
"type": "trail-compliance",
"definition": {
"required": false,
"exceptions": []
}
},
"ignored": true,
"resolutions": [
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "339df1d5-762c-4214-84fb-5388b424",
"flow_id": "28447c7d-904b-4594-8b05-88d5d938",
"flow_name": "nginx-ci",
"trail_id": "eca94e88-4c4b-4041-a789-0824d654",
"trail_name": "81530019506a14028a247b879d1cc379ec732a27",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "a63a7463-6bbb-4088-833b-66ce68e1",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "bbb2d3bb-e2b1-4438-bc0b-e5604882",
"trail_name": "promotion-28",
"artifact_status": "COMPLIANT"
}
}
]
},
{
"rule": {
"type": "attestation",
"definition": {
"if_condition": {
"text": "flow.tags.kind == \"microservice\" or flow.name == \"aws-snyk-scan\""
},
"name": "*",
"type": "snyk",
"must_be_compliant": true
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "339df1d5-762c-4214-84fb-5388b424",
"flow_id": "28447c7d-904b-4594-8b05-88d5d938",
"flow_name": "nginx-ci",
"trail_id": "eca94e88-4c4b-4041-a789-0824d654",
"trail_name": "81530019506a14028a247b879d1cc379ec732a27",
"matching_attestation_id": "eaffa48c-4f93-47f0-a0bf-d525a7a8",
"matching_attestation_name": "snyk-container-scan",
"matching_attestation_type": "snyk",
"matching_attestation_compliance": true
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "a63a7463-6bbb-4088-833b-66ce68e1",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "bbb2d3bb-e2b1-4438-bc0b-e5604882",
"trail_name": "promotion-28"
}
}
]
}
]
},
{
"policy_id": "d50367a3-f3bb-47f1-af16-d03e9166",
"policy_version": 2,
"status": "COMPLIANT",
"rule_evaluations": [
{
"rule": {
"type": "provenance",
"definition": {
"required": true,
"exceptions": []
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "339df1d5-762c-4214-84fb-5388b424",
"flow_id": "28447c7d-904b-4594-8b05-88d5d938",
"flow_name": "nginx-ci",
"trail_id": "eca94e88-4c4b-4041-a789-0824d654",
"trail_name": "81530019506a14028a247b879d1cc379ec732a27"
}
},
{
"type": "rule_satisfied",
"context": {
"artifact_id": "a63a7463-6bbb-4088-833b-66ce68e1",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "bbb2d3bb-e2b1-4438-bc0b-e5604882",
"trail_name": "promotion-28"
}
}
]
},
{
"rule": {
"type": "trail-compliance",
"definition": {
"required": false,
"exceptions": []
}
},
"ignored": true,
"resolutions": [
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "339df1d5-762c-4214-84fb-5388b424",
"flow_id": "28447c7d-904b-4594-8b05-88d5d938",
"flow_name": "nginx-ci",
"trail_id": "eca94e88-4c4b-4041-a789-0824d654",
"trail_name": "81530019506a14028a247b879d1cc379ec732a27",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "a63a7463-6bbb-4088-833b-66ce68e1",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "bbb2d3bb-e2b1-4438-bc0b-e5604882",
"trail_name": "promotion-28",
"artifact_status": "COMPLIANT"
}
}
]
}
]
}
],
"reasons_for_incompliance": [],
"fingerprint": "fdec8a0db427568546194dbf87681c1c6ae3071d3db1bf2bce1de0502a52995c",
"creationTimestamp": [
1745246691
],
"pods": null,
"annotation": {
"type": "unchanged",
"was": 1,
"now": 1
},
"flow_name": "nginx-ci",
"git_commit": "81530019506a14028a247b879d1cc379ec732a27",
"commit_url": "https://github.com/cyber-dojo/nginx/commit/81530019506a14028a247b879d1cc379ec732a27",
"html_url": "https://app.kosli.com/cyber-dojo/flows/nginx-ci/artifacts/fdec8a0db427568546194dbf87681c1c6ae3071d3db1bf2bce1de0502a52995c?artifact_id=339df1d5-762c-4214-84fb-5388b424",
"flow_html_url": "https://app.kosli.com/cyber-dojo/flows/nginx-ci",
"deployment_diff": {
"diff_url": "https://github.com/cyber-dojo/nginx/compare/b332a0888170b229c247b0550fe608440cd63005...81530019506a14028a247b879d1cc379ec732a27",
"previous_git_commit": "b332a0888170b229c247b0550fe608440cd63005",
"previous_fingerprint": "1cd88ea083af7ea2b08d5a376c4091b14909ac0b1523950f7ae9b30523a89e8e",
"previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/nginx:b332a08@sha256:1cd88ea083af7ea2b08d5a376c4091b14909ac0b1523950f7ae9b30523a89e8e",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
"previous_git_commit_url": "https://github.com/cyber-dojo/nginx/commit/b332a0888170b229c247b0550fe608440cd63005",
"previous_trail_name": "b332a0888170b229c247b0550fe608440cd63005",
"previous_template_reference_name": "nginx"
},
"commit_lead_time": 114603.0,
"flows": [
{
"flow_name": "nginx-ci",
"trail_name": "81530019506a14028a247b879d1cc379ec732a27",
"template_reference_name": "nginx",
"git_commit": "81530019506a14028a247b879d1cc379ec732a27",
"commit_url": "https://github.com/cyber-dojo/nginx/commit/81530019506a14028a247b879d1cc379ec732a27",
"git_commit_info": {
"sha1": "81530019506a14028a247b879d1cc379ec732a27",
"message": "Merge pull request #60 from cyber-dojo/update-base-image-122\n\nUpdate base image to fix snyk vulns",
"author": "Jon Jagger <jon@kosli.com>",
"branch": "",
"timestamp": 1745132088.0,
"url": "https://github.com/cyber-dojo/nginx/commit/81530019506a14028a247b879d1cc379ec732a27"
},
"html_url": "https://app.kosli.com/cyber-dojo/flows/nginx-ci/artifacts/fdec8a0db427568546194dbf87681c1c6ae3071d3db1bf2bce1de0502a52995c?artifact_id=339df1d5-762c-4214-84fb-5388b424",
"flow_html_url": "https://app.kosli.com/cyber-dojo/flows/nginx-ci",
"deployment_diff": {
"diff_url": "https://github.com/cyber-dojo/nginx/compare/b332a0888170b229c247b0550fe608440cd63005...81530019506a14028a247b879d1cc379ec732a27",
"previous_git_commit": "b332a0888170b229c247b0550fe608440cd63005",
"previous_fingerprint": "1cd88ea083af7ea2b08d5a376c4091b14909ac0b1523950f7ae9b30523a89e8e",
"previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/nginx:b332a08@sha256:1cd88ea083af7ea2b08d5a376c4091b14909ac0b1523950f7ae9b30523a89e8e",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
"previous_git_commit_url": "https://github.com/cyber-dojo/nginx/commit/b332a0888170b229c247b0550fe608440cd63005",
"previous_trail_name": "b332a0888170b229c247b0550fe608440cd63005",
"previous_template_reference_name": "nginx"
},
"commit_lead_time": 114603.0,
"artifact_compliance_in_flow": true,
"flow_reasons_for_non_compliance": []
},
{
"flow_name": "production-promotion",
"trail_name": "promotion-28",
"template_reference_name": "nginx",
"git_commit": "5b2bcf60826ba250234cfb58a8c7261964fc4aa5",
"commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/5b2bcf60826ba250234cfb58a8c7261964fc4aa5",
"git_commit_info": {
"sha1": "5b2bcf60826ba250234cfb58a8c7261964fc4aa5",
"message": "Reinstate sdlc-control-gate",
"author": "JonJagger <jon@kosli.com>",
"branch": "main",
"timestamp": 1745058712.0,
"url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/5b2bcf60826ba250234cfb58a8c7261964fc4aa5"
},
"html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion/artifacts/fdec8a0db427568546194dbf87681c1c6ae3071d3db1bf2bce1de0502a52995c?artifact_id=a63a7463-6bbb-4088-833b-66ce68e1",
"flow_html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion",
"deployment_diff": {
"diff_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/compare/6f2892b3629ea32a4e7883286515834108e0b8f0...5b2bcf60826ba250234cfb58a8c7261964fc4aa5",
"previous_git_commit": "6f2892b3629ea32a4e7883286515834108e0b8f0",
"previous_fingerprint": "1cd88ea083af7ea2b08d5a376c4091b14909ac0b1523950f7ae9b30523a89e8e",
"previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/nginx:b332a08@sha256:1cd88ea083af7ea2b08d5a376c4091b14909ac0b1523950f7ae9b30523a89e8e",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
"previous_git_commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/6f2892b3629ea32a4e7883286515834108e0b8f0",
"previous_trail_name": "promotion-20",
"previous_template_reference_name": "nginx"
},
"commit_lead_time": 187979.0,
"artifact_compliance_in_flow": true,
"flow_reasons_for_non_compliance": []
}
]
},
{
"name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/saver:6d98000@sha256:130709ce15f4b1b8004cfb2c6025fc14e669e8fa5a8ae6667b470d8e8bd6959c",
"deployments": [],
"compliant": true,
"policy_decisions": [
{
"policy_id": "0b0c4d5a-cc1f-4725-8f97-af256289",
"policy_version": 1,
"status": "COMPLIANT",
"rule_evaluations": [
{
"rule": {
"type": "provenance",
"definition": {
"required": false,
"exceptions": []
}
},
"ignored": true,
"resolutions": [
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "c4123b29-e0c4-48ec-a3c3-479194f3",
"flow_id": "e54bdf65-de27-448f-807a-08e09590",
"flow_name": "saver-ci",
"trail_id": "a8e10749-d5bf-4a0a-84c1-e32916ba",
"trail_name": "6d98000bd257329afcad4a06f05742950e208a03"
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "fa1ebfb4-1b0a-4cf5-9bbb-70dcdd96",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "bbb2d3bb-e2b1-4438-bc0b-e5604882",
"trail_name": "promotion-28"
}
}
]
},
{
"rule": {
"type": "trail-compliance",
"definition": {
"required": false,
"exceptions": []
}
},
"ignored": true,
"resolutions": [
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "c4123b29-e0c4-48ec-a3c3-479194f3",
"flow_id": "e54bdf65-de27-448f-807a-08e09590",
"flow_name": "saver-ci",
"trail_id": "a8e10749-d5bf-4a0a-84c1-e32916ba",
"trail_name": "6d98000bd257329afcad4a06f05742950e208a03",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "fa1ebfb4-1b0a-4cf5-9bbb-70dcdd96",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "bbb2d3bb-e2b1-4438-bc0b-e5604882",
"trail_name": "promotion-28",
"artifact_status": "COMPLIANT"
}
}
]
},
{
"rule": {
"type": "attestation",
"definition": {
"if_condition": {
"text": "flow.tags.kind == \"microservice\""
},
"name": "*",
"type": "pull_request",
"must_be_compliant": true
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "c4123b29-e0c4-48ec-a3c3-479194f3",
"flow_id": "e54bdf65-de27-448f-807a-08e09590",
"flow_name": "saver-ci",
"trail_id": "a8e10749-d5bf-4a0a-84c1-e32916ba",
"trail_name": "6d98000bd257329afcad4a06f05742950e208a03",
"matching_attestation_id": "16597a92-762b-4246-93c0-ae30d51e",
"matching_attestation_name": "pull-request",
"matching_attestation_type": "pull_request",
"matching_attestation_compliance": true
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "fa1ebfb4-1b0a-4cf5-9bbb-70dcdd96",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "bbb2d3bb-e2b1-4438-bc0b-e5604882",
"trail_name": "promotion-28"
}
}
]
}
]
},
{
"policy_id": "5da6b9e4-a7ca-4e01-b956-f1230198",
"policy_version": 1,
"status": "COMPLIANT",
"rule_evaluations": [
{
"rule": {
"type": "provenance",
"definition": {
"required": false,
"exceptions": []
}
},
"ignored": true,
"resolutions": [
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "c4123b29-e0c4-48ec-a3c3-479194f3",
"flow_id": "e54bdf65-de27-448f-807a-08e09590",
"flow_name": "saver-ci",
"trail_id": "a8e10749-d5bf-4a0a-84c1-e32916ba",
"trail_name": "6d98000bd257329afcad4a06f05742950e208a03"
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "fa1ebfb4-1b0a-4cf5-9bbb-70dcdd96",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "bbb2d3bb-e2b1-4438-bc0b-e5604882",
"trail_name": "promotion-28"
}
}
]
},
{
"rule": {
"type": "trail-compliance",
"definition": {
"required": true,
"exceptions": []
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "c4123b29-e0c4-48ec-a3c3-479194f3",
"flow_id": "e54bdf65-de27-448f-807a-08e09590",
"flow_name": "saver-ci",
"trail_id": "a8e10749-d5bf-4a0a-84c1-e32916ba",
"trail_name": "6d98000bd257329afcad4a06f05742950e208a03",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_satisfied",
"context": {
"artifact_id": "fa1ebfb4-1b0a-4cf5-9bbb-70dcdd96",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "bbb2d3bb-e2b1-4438-bc0b-e5604882",
"trail_name": "promotion-28",
"artifact_status": "COMPLIANT"
}
}
]
}
]
},
{
"policy_id": "a1cb6673-a70d-475c-98c1-77d8a598",
"policy_version": 1,
"status": "COMPLIANT",
"rule_evaluations": [
{
"rule": {
"type": "provenance",
"definition": {
"required": false,
"exceptions": []
}
},
"ignored": true,
"resolutions": [
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "c4123b29-e0c4-48ec-a3c3-479194f3",
"flow_id": "e54bdf65-de27-448f-807a-08e09590",
"flow_name": "saver-ci",
"trail_id": "a8e10749-d5bf-4a0a-84c1-e32916ba",
"trail_name": "6d98000bd257329afcad4a06f05742950e208a03"
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "fa1ebfb4-1b0a-4cf5-9bbb-70dcdd96",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "bbb2d3bb-e2b1-4438-bc0b-e5604882",
"trail_name": "promotion-28"
}
}
]
},
{
"rule": {
"type": "trail-compliance",
"definition": {
"required": false,
"exceptions": []
}
},
"ignored": true,
"resolutions": [
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "c4123b29-e0c4-48ec-a3c3-479194f3",
"flow_id": "e54bdf65-de27-448f-807a-08e09590",
"flow_name": "saver-ci",
"trail_id": "a8e10749-d5bf-4a0a-84c1-e32916ba",
"trail_name": "6d98000bd257329afcad4a06f05742950e208a03",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "fa1ebfb4-1b0a-4cf5-9bbb-70dcdd96",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "bbb2d3bb-e2b1-4438-bc0b-e5604882",
"trail_name": "promotion-28",
"artifact_status": "COMPLIANT"
}
}
]
},
{
"rule": {
"type": "attestation",
"definition": {
"if_condition": {
"text": "flow.tags.kind == \"microservice\" or flow.name == \"aws-snyk-scan\""
},
"name": "*",
"type": "snyk",
"must_be_compliant": true
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "c4123b29-e0c4-48ec-a3c3-479194f3",
"flow_id": "e54bdf65-de27-448f-807a-08e09590",
"flow_name": "saver-ci",
"trail_id": "a8e10749-d5bf-4a0a-84c1-e32916ba",
"trail_name": "6d98000bd257329afcad4a06f05742950e208a03",
"matching_attestation_id": "24054365-bfe6-46fc-9a94-e83f6859",
"matching_attestation_name": "snyk-container-scan",
"matching_attestation_type": "snyk",
"matching_attestation_compliance": true
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "fa1ebfb4-1b0a-4cf5-9bbb-70dcdd96",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "bbb2d3bb-e2b1-4438-bc0b-e5604882",
"trail_name": "promotion-28"
}
}
]
}
]
},
{
"policy_id": "d50367a3-f3bb-47f1-af16-d03e9166",
"policy_version": 2,
"status": "COMPLIANT",
"rule_evaluations": [
{
"rule": {
"type": "provenance",
"definition": {
"required": true,
"exceptions": []
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "c4123b29-e0c4-48ec-a3c3-479194f3",
"flow_id": "e54bdf65-de27-448f-807a-08e09590",
"flow_name": "saver-ci",
"trail_id": "a8e10749-d5bf-4a0a-84c1-e32916ba",
"trail_name": "6d98000bd257329afcad4a06f05742950e208a03"
}
},
{
"type": "rule_satisfied",
"context": {
"artifact_id": "fa1ebfb4-1b0a-4cf5-9bbb-70dcdd96",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "bbb2d3bb-e2b1-4438-bc0b-e5604882",
"trail_name": "promotion-28"
}
}
]
},
{
"rule": {
"type": "trail-compliance",
"definition": {
"required": false,
"exceptions": []
}
},
"ignored": true,
"resolutions": [
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "c4123b29-e0c4-48ec-a3c3-479194f3",
"flow_id": "e54bdf65-de27-448f-807a-08e09590",
"flow_name": "saver-ci",
"trail_id": "a8e10749-d5bf-4a0a-84c1-e32916ba",
"trail_name": "6d98000bd257329afcad4a06f05742950e208a03",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "fa1ebfb4-1b0a-4cf5-9bbb-70dcdd96",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "bbb2d3bb-e2b1-4438-bc0b-e5604882",
"trail_name": "promotion-28",
"artifact_status": "COMPLIANT"
}
}
]
}
]
}
],
"reasons_for_incompliance": [],
"fingerprint": "130709ce15f4b1b8004cfb2c6025fc14e669e8fa5a8ae6667b470d8e8bd6959c",
"creationTimestamp": [
1745246687
],
"pods": null,
"annotation": {
"type": "unchanged",
"was": 1,
"now": 1
},
"flow_name": "saver-ci",
"git_commit": "6d98000bd257329afcad4a06f05742950e208a03",
"commit_url": "https://github.com/cyber-dojo/saver/commit/6d98000bd257329afcad4a06f05742950e208a03",
"html_url": "https://app.kosli.com/cyber-dojo/flows/saver-ci/artifacts/130709ce15f4b1b8004cfb2c6025fc14e669e8fa5a8ae6667b470d8e8bd6959c?artifact_id=c4123b29-e0c4-48ec-a3c3-479194f3",
"flow_html_url": "https://app.kosli.com/cyber-dojo/flows/saver-ci",
"deployment_diff": {
"diff_url": "https://github.com/cyber-dojo/saver/compare/f1ac00748b91a55abe423a650fd2c3e8326b0f52...6d98000bd257329afcad4a06f05742950e208a03",
"previous_git_commit": "f1ac00748b91a55abe423a650fd2c3e8326b0f52",
"previous_fingerprint": "faf23d0289d1a52de71852157724925f2644cb6fedb5d40113740c8b3ce42b15",
"previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/saver:f1ac007@sha256:faf23d0289d1a52de71852157724925f2644cb6fedb5d40113740c8b3ce42b15",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
"previous_git_commit_url": "https://github.com/cyber-dojo/saver/commit/f1ac00748b91a55abe423a650fd2c3e8326b0f52",
"previous_trail_name": "f1ac00748b91a55abe423a650fd2c3e8326b0f52",
"previous_template_reference_name": "saver"
},
"commit_lead_time": 787.0,
"flows": [
{
"flow_name": "saver-ci",
"trail_name": "6d98000bd257329afcad4a06f05742950e208a03",
"template_reference_name": "saver",
"git_commit": "6d98000bd257329afcad4a06f05742950e208a03",
"commit_url": "https://github.com/cyber-dojo/saver/commit/6d98000bd257329afcad4a06f05742950e208a03",
"git_commit_info": {
"sha1": "6d98000bd257329afcad4a06f05742950e208a03",
"message": "Merge pull request #196 from cyber-dojo/run-workflow-174\n\nRun workflow to check reusable and composite workflows",
"author": "Jon Jagger <jon@kosli.com>",
"branch": "",
"timestamp": 1745245900.0,
"url": "https://github.com/cyber-dojo/saver/commit/6d98000bd257329afcad4a06f05742950e208a03"
},
"html_url": "https://app.kosli.com/cyber-dojo/flows/saver-ci/artifacts/130709ce15f4b1b8004cfb2c6025fc14e669e8fa5a8ae6667b470d8e8bd6959c?artifact_id=c4123b29-e0c4-48ec-a3c3-479194f3",
"flow_html_url": "https://app.kosli.com/cyber-dojo/flows/saver-ci",
"deployment_diff": {
"diff_url": "https://github.com/cyber-dojo/saver/compare/f1ac00748b91a55abe423a650fd2c3e8326b0f52...6d98000bd257329afcad4a06f05742950e208a03",
"previous_git_commit": "f1ac00748b91a55abe423a650fd2c3e8326b0f52",
"previous_fingerprint": "faf23d0289d1a52de71852157724925f2644cb6fedb5d40113740c8b3ce42b15",
"previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/saver:f1ac007@sha256:faf23d0289d1a52de71852157724925f2644cb6fedb5d40113740c8b3ce42b15",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
"previous_git_commit_url": "https://github.com/cyber-dojo/saver/commit/f1ac00748b91a55abe423a650fd2c3e8326b0f52",
"previous_trail_name": "f1ac00748b91a55abe423a650fd2c3e8326b0f52",
"previous_template_reference_name": "saver"
},
"commit_lead_time": 787.0,
"artifact_compliance_in_flow": true,
"flow_reasons_for_non_compliance": []
},
{
"flow_name": "production-promotion",
"trail_name": "promotion-28",
"template_reference_name": "saver",
"git_commit": "5b2bcf60826ba250234cfb58a8c7261964fc4aa5",
"commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/5b2bcf60826ba250234cfb58a8c7261964fc4aa5",
"git_commit_info": {
"sha1": "5b2bcf60826ba250234cfb58a8c7261964fc4aa5",
"message": "Reinstate sdlc-control-gate",
"author": "JonJagger <jon@kosli.com>",
"branch": "main",
"timestamp": 1745058712.0,
"url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/5b2bcf60826ba250234cfb58a8c7261964fc4aa5"
},
"html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion/artifacts/130709ce15f4b1b8004cfb2c6025fc14e669e8fa5a8ae6667b470d8e8bd6959c?artifact_id=fa1ebfb4-1b0a-4cf5-9bbb-70dcdd96",
"flow_html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion",
"deployment_diff": {
"diff_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/compare/5b2bcf60826ba250234cfb58a8c7261964fc4aa5...5b2bcf60826ba250234cfb58a8c7261964fc4aa5",
"previous_git_commit": "5b2bcf60826ba250234cfb58a8c7261964fc4aa5",
"previous_fingerprint": "faf23d0289d1a52de71852157724925f2644cb6fedb5d40113740c8b3ce42b15",
"previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/saver:f1ac007@sha256:faf23d0289d1a52de71852157724925f2644cb6fedb5d40113740c8b3ce42b15",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
"previous_git_commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/5b2bcf60826ba250234cfb58a8c7261964fc4aa5",
"previous_trail_name": "promotion-26",
"previous_template_reference_name": "saver"
},
"commit_lead_time": 187975.0,
"artifact_compliance_in_flow": true,
"flow_reasons_for_non_compliance": []
}
]
},
{
"name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/custom-start-points:bd12cd8@sha256:d843afb875821b609342c2a1a04d3b8989fb15f3880fabde1756e51158d2da91",
"deployments": [],
"compliant": true,
"policy_decisions": [
{
"policy_id": "0b0c4d5a-cc1f-4725-8f97-af256289",
"policy_version": 1,
"status": "COMPLIANT",
"rule_evaluations": [
{
"rule": {
"type": "provenance",
"definition": {
"required": false,
"exceptions": []
}
},
"ignored": true,
"resolutions": [
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "cc21f799-9d8d-43ee-9ab8-bd67c119",
"flow_id": "217f4b82-2fe6-41ef-8214-e34c3a47",
"flow_name": "custom-start-points-ci",
"trail_id": "0856f34d-1c7c-4e6a-905b-c3ff6fe4",
"trail_name": "bd12cd8701e3ceaed5040cc5dd9d09b53e4329e5"
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "5c969934-0745-489a-bd82-ba91f141",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "ed0fd538-e5af-49ef-83f1-857dbec2",
"trail_name": "promotion-27"
}
}
]
},
{
"rule": {
"type": "trail-compliance",
"definition": {
"required": false,
"exceptions": []
}
},
"ignored": true,
"resolutions": [
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "cc21f799-9d8d-43ee-9ab8-bd67c119",
"flow_id": "217f4b82-2fe6-41ef-8214-e34c3a47",
"flow_name": "custom-start-points-ci",
"trail_id": "0856f34d-1c7c-4e6a-905b-c3ff6fe4",
"trail_name": "bd12cd8701e3ceaed5040cc5dd9d09b53e4329e5",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "5c969934-0745-489a-bd82-ba91f141",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "ed0fd538-e5af-49ef-83f1-857dbec2",
"trail_name": "promotion-27",
"artifact_status": "COMPLIANT"
}
}
]
},
{
"rule": {
"type": "attestation",
"definition": {
"if_condition": {
"text": "flow.tags.kind == \"microservice\""
},
"name": "*",
"type": "pull_request",
"must_be_compliant": true
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "cc21f799-9d8d-43ee-9ab8-bd67c119",
"flow_id": "217f4b82-2fe6-41ef-8214-e34c3a47",
"flow_name": "custom-start-points-ci",
"trail_id": "0856f34d-1c7c-4e6a-905b-c3ff6fe4",
"trail_name": "bd12cd8701e3ceaed5040cc5dd9d09b53e4329e5",
"matching_attestation_id": "714befea-0644-4f10-bccb-22e2ea3e",
"matching_attestation_name": "pull-request",
"matching_attestation_type": "pull_request",
"matching_attestation_compliance": true
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "5c969934-0745-489a-bd82-ba91f141",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "ed0fd538-e5af-49ef-83f1-857dbec2",
"trail_name": "promotion-27"
}
}
]
}
]
},
{
"policy_id": "5da6b9e4-a7ca-4e01-b956-f1230198",
"policy_version": 1,
"status": "COMPLIANT",
"rule_evaluations": [
{
"rule": {
"type": "provenance",
"definition": {
"required": false,
"exceptions": []
}
},
"ignored": true,
"resolutions": [
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "cc21f799-9d8d-43ee-9ab8-bd67c119",
"flow_id": "217f4b82-2fe6-41ef-8214-e34c3a47",
"flow_name": "custom-start-points-ci",
"trail_id": "0856f34d-1c7c-4e6a-905b-c3ff6fe4",
"trail_name": "bd12cd8701e3ceaed5040cc5dd9d09b53e4329e5"
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "5c969934-0745-489a-bd82-ba91f141",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "ed0fd538-e5af-49ef-83f1-857dbec2",
"trail_name": "promotion-27"
}
}
]
},
{
"rule": {
"type": "trail-compliance",
"definition": {
"required": true,
"exceptions": []
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "cc21f799-9d8d-43ee-9ab8-bd67c119",
"flow_id": "217f4b82-2fe6-41ef-8214-e34c3a47",
"flow_name": "custom-start-points-ci",
"trail_id": "0856f34d-1c7c-4e6a-905b-c3ff6fe4",
"trail_name": "bd12cd8701e3ceaed5040cc5dd9d09b53e4329e5",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_satisfied",
"context": {
"artifact_id": "5c969934-0745-489a-bd82-ba91f141",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "ed0fd538-e5af-49ef-83f1-857dbec2",
"trail_name": "promotion-27",
"artifact_status": "COMPLIANT"
}
}
]
}
]
},
{
"policy_id": "a1cb6673-a70d-475c-98c1-77d8a598",
"policy_version": 1,
"status": "COMPLIANT",
"rule_evaluations": [
{
"rule": {
"type": "provenance",
"definition": {
"required": false,
"exceptions": []
}
},
"ignored": true,
"resolutions": [
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "cc21f799-9d8d-43ee-9ab8-bd67c119",
"flow_id": "217f4b82-2fe6-41ef-8214-e34c3a47",
"flow_name": "custom-start-points-ci",
"trail_id": "0856f34d-1c7c-4e6a-905b-c3ff6fe4",
"trail_name": "bd12cd8701e3ceaed5040cc5dd9d09b53e4329e5"
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "5c969934-0745-489a-bd82-ba91f141",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "ed0fd538-e5af-49ef-83f1-857dbec2",
"trail_name": "promotion-27"
}
}
]
},
{
"rule": {
"type": "trail-compliance",
"definition": {
"required": false,
"exceptions": []
}
},
"ignored": true,
"resolutions": [
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "cc21f799-9d8d-43ee-9ab8-bd67c119",
"flow_id": "217f4b82-2fe6-41ef-8214-e34c3a47",
"flow_name": "custom-start-points-ci",
"trail_id": "0856f34d-1c7c-4e6a-905b-c3ff6fe4",
"trail_name": "bd12cd8701e3ceaed5040cc5dd9d09b53e4329e5",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "5c969934-0745-489a-bd82-ba91f141",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "ed0fd538-e5af-49ef-83f1-857dbec2",
"trail_name": "promotion-27",
"artifact_status": "COMPLIANT"
}
}
]
},
{
"rule": {
"type": "attestation",
"definition": {
"if_condition": {
"text": "flow.tags.kind == \"microservice\" or flow.name == \"aws-snyk-scan\""
},
"name": "*",
"type": "snyk",
"must_be_compliant": true
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "cc21f799-9d8d-43ee-9ab8-bd67c119",
"flow_id": "217f4b82-2fe6-41ef-8214-e34c3a47",
"flow_name": "custom-start-points-ci",
"trail_id": "0856f34d-1c7c-4e6a-905b-c3ff6fe4",
"trail_name": "bd12cd8701e3ceaed5040cc5dd9d09b53e4329e5",
"matching_attestation_id": "3ef923c3-0a37-4b9e-97b6-5270daad",
"matching_attestation_name": "snyk-container-scan",
"matching_attestation_type": "snyk",
"matching_attestation_compliance": true
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "5c969934-0745-489a-bd82-ba91f141",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "ed0fd538-e5af-49ef-83f1-857dbec2",
"trail_name": "promotion-27"
}
}
]
}
]
},
{
"policy_id": "d50367a3-f3bb-47f1-af16-d03e9166",
"policy_version": 2,
"status": "COMPLIANT",
"rule_evaluations": [
{
"rule": {
"type": "provenance",
"definition": {
"required": true,
"exceptions": []
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "cc21f799-9d8d-43ee-9ab8-bd67c119",
"flow_id": "217f4b82-2fe6-41ef-8214-e34c3a47",
"flow_name": "custom-start-points-ci",
"trail_id": "0856f34d-1c7c-4e6a-905b-c3ff6fe4",
"trail_name": "bd12cd8701e3ceaed5040cc5dd9d09b53e4329e5"
}
},
{
"type": "rule_satisfied",
"context": {
"artifact_id": "5c969934-0745-489a-bd82-ba91f141",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "ed0fd538-e5af-49ef-83f1-857dbec2",
"trail_name": "promotion-27"
}
}
]
},
{
"rule": {
"type": "trail-compliance",
"definition": {
"required": false,
"exceptions": []
}
},
"ignored": true,
"resolutions": [
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "cc21f799-9d8d-43ee-9ab8-bd67c119",
"flow_id": "217f4b82-2fe6-41ef-8214-e34c3a47",
"flow_name": "custom-start-points-ci",
"trail_id": "0856f34d-1c7c-4e6a-905b-c3ff6fe4",
"trail_name": "bd12cd8701e3ceaed5040cc5dd9d09b53e4329e5",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "5c969934-0745-489a-bd82-ba91f141",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "ed0fd538-e5af-49ef-83f1-857dbec2",
"trail_name": "promotion-27",
"artifact_status": "COMPLIANT"
}
}
]
}
]
}
],
"reasons_for_incompliance": [],
"fingerprint": "d843afb875821b609342c2a1a04d3b8989fb15f3880fabde1756e51158d2da91",
"creationTimestamp": [
1745062770
],
"pods": null,
"annotation": {
"type": "unchanged",
"was": 1,
"now": 1
},
"flow_name": "custom-start-points-ci",
"git_commit": "bd12cd8701e3ceaed5040cc5dd9d09b53e4329e5",
"commit_url": "https://github.com/cyber-dojo/custom-start-points/commit/bd12cd8701e3ceaed5040cc5dd9d09b53e4329e5",
"html_url": "https://app.kosli.com/cyber-dojo/flows/custom-start-points-ci/artifacts/d843afb875821b609342c2a1a04d3b8989fb15f3880fabde1756e51158d2da91?artifact_id=cc21f799-9d8d-43ee-9ab8-bd67c119",
"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/fc50680a4ac2c548972db5c8e2430bc31748a1dd...bd12cd8701e3ceaed5040cc5dd9d09b53e4329e5",
"previous_git_commit": "fc50680a4ac2c548972db5c8e2430bc31748a1dd",
"previous_fingerprint": "35f2f9c212a91f92751afc3dc5347e83c0efc8923a3092f9ca05c006843f9f2e",
"previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/custom-start-points:fc50680@sha256:35f2f9c212a91f92751afc3dc5347e83c0efc8923a3092f9ca05c006843f9f2e",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
"previous_git_commit_url": "https://github.com/cyber-dojo/custom-start-points/commit/fc50680a4ac2c548972db5c8e2430bc31748a1dd",
"previous_trail_name": "fc50680a4ac2c548972db5c8e2430bc31748a1dd",
"previous_template_reference_name": "custom-start-points"
},
"commit_lead_time": 1235.0,
"flows": [
{
"flow_name": "custom-start-points-ci",
"trail_name": "bd12cd8701e3ceaed5040cc5dd9d09b53e4329e5",
"template_reference_name": "custom-start-points",
"git_commit": "bd12cd8701e3ceaed5040cc5dd9d09b53e4329e5",
"commit_url": "https://github.com/cyber-dojo/custom-start-points/commit/bd12cd8701e3ceaed5040cc5dd9d09b53e4329e5",
"git_commit_info": {
"sha1": "bd12cd8701e3ceaed5040cc5dd9d09b53e4329e5",
"message": "Merge pull request #55 from cyber-dojo/update-base-image-165\n\nRun workflow to pickup new base image",
"author": "Jon Jagger <jon@kosli.com>",
"branch": "main",
"timestamp": 1745061535.0,
"url": "https://github.com/cyber-dojo/custom-start-points/commit/bd12cd8701e3ceaed5040cc5dd9d09b53e4329e5"
},
"html_url": "https://app.kosli.com/cyber-dojo/flows/custom-start-points-ci/artifacts/d843afb875821b609342c2a1a04d3b8989fb15f3880fabde1756e51158d2da91?artifact_id=cc21f799-9d8d-43ee-9ab8-bd67c119",
"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/fc50680a4ac2c548972db5c8e2430bc31748a1dd...bd12cd8701e3ceaed5040cc5dd9d09b53e4329e5",
"previous_git_commit": "fc50680a4ac2c548972db5c8e2430bc31748a1dd",
"previous_fingerprint": "35f2f9c212a91f92751afc3dc5347e83c0efc8923a3092f9ca05c006843f9f2e",
"previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/custom-start-points:fc50680@sha256:35f2f9c212a91f92751afc3dc5347e83c0efc8923a3092f9ca05c006843f9f2e",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
"previous_git_commit_url": "https://github.com/cyber-dojo/custom-start-points/commit/fc50680a4ac2c548972db5c8e2430bc31748a1dd",
"previous_trail_name": "fc50680a4ac2c548972db5c8e2430bc31748a1dd",
"previous_template_reference_name": "custom-start-points"
},
"commit_lead_time": 1235.0,
"artifact_compliance_in_flow": true,
"flow_reasons_for_non_compliance": []
},
{
"flow_name": "production-promotion",
"trail_name": "promotion-27",
"template_reference_name": "custom-start-points",
"git_commit": "5b2bcf60826ba250234cfb58a8c7261964fc4aa5",
"commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/5b2bcf60826ba250234cfb58a8c7261964fc4aa5",
"git_commit_info": {
"sha1": "5b2bcf60826ba250234cfb58a8c7261964fc4aa5",
"message": "Reinstate sdlc-control-gate",
"author": "JonJagger <jon@kosli.com>",
"branch": "main",
"timestamp": 1745058712.0,
"url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/5b2bcf60826ba250234cfb58a8c7261964fc4aa5"
},
"html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion/artifacts/d843afb875821b609342c2a1a04d3b8989fb15f3880fabde1756e51158d2da91?artifact_id=5c969934-0745-489a-bd82-ba91f141",
"flow_html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion",
"deployment_diff": {
"diff_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/compare/6f2892b3629ea32a4e7883286515834108e0b8f0...5b2bcf60826ba250234cfb58a8c7261964fc4aa5",
"previous_git_commit": "6f2892b3629ea32a4e7883286515834108e0b8f0",
"previous_fingerprint": "35f2f9c212a91f92751afc3dc5347e83c0efc8923a3092f9ca05c006843f9f2e",
"previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/custom-start-points:fc50680@sha256:35f2f9c212a91f92751afc3dc5347e83c0efc8923a3092f9ca05c006843f9f2e",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
"previous_git_commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/6f2892b3629ea32a4e7883286515834108e0b8f0",
"previous_trail_name": "promotion-20",
"previous_template_reference_name": "custom-start-points"
},
"commit_lead_time": 4058.0,
"artifact_compliance_in_flow": true,
"flow_reasons_for_non_compliance": []
}
]
},
{
"name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/exercises-start-points:e636b15@sha256:127a436af2699b06411dda018ab68501017f4e0ba6f18a4cf8b96b5cdf44dbe1",
"deployments": [],
"compliant": true,
"policy_decisions": [
{
"policy_id": "0b0c4d5a-cc1f-4725-8f97-af256289",
"policy_version": 1,
"status": "COMPLIANT",
"rule_evaluations": [
{
"rule": {
"type": "provenance",
"definition": {
"required": false,
"exceptions": []
}
},
"ignored": true,
"resolutions": [
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "80133745-d408-4d48-8407-3052a3ff",
"flow_id": "c1bb83be-5195-4814-9fae-eac6bf67",
"flow_name": "exercises-start-points-ci",
"trail_id": "a45c3f7d-4e84-4500-a9fa-7b7215df",
"trail_name": "e636b153dca7b8279ac24ef1bbc44120f4170fe6"
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "017273bb-222a-4b3f-aae6-47ba5c63",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "ed0fd538-e5af-49ef-83f1-857dbec2",
"trail_name": "promotion-27"
}
}
]
},
{
"rule": {
"type": "trail-compliance",
"definition": {
"required": false,
"exceptions": []
}
},
"ignored": true,
"resolutions": [
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "80133745-d408-4d48-8407-3052a3ff",
"flow_id": "c1bb83be-5195-4814-9fae-eac6bf67",
"flow_name": "exercises-start-points-ci",
"trail_id": "a45c3f7d-4e84-4500-a9fa-7b7215df",
"trail_name": "e636b153dca7b8279ac24ef1bbc44120f4170fe6",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "017273bb-222a-4b3f-aae6-47ba5c63",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "ed0fd538-e5af-49ef-83f1-857dbec2",
"trail_name": "promotion-27",
"artifact_status": "COMPLIANT"
}
}
]
},
{
"rule": {
"type": "attestation",
"definition": {
"if_condition": {
"text": "flow.tags.kind == \"microservice\""
},
"name": "*",
"type": "pull_request",
"must_be_compliant": true
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "80133745-d408-4d48-8407-3052a3ff",
"flow_id": "c1bb83be-5195-4814-9fae-eac6bf67",
"flow_name": "exercises-start-points-ci",
"trail_id": "a45c3f7d-4e84-4500-a9fa-7b7215df",
"trail_name": "e636b153dca7b8279ac24ef1bbc44120f4170fe6",
"matching_attestation_id": "0dddd9e5-a056-4ae4-9427-c9e457ae",
"matching_attestation_name": "pull-request",
"matching_attestation_type": "pull_request",
"matching_attestation_compliance": true
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "017273bb-222a-4b3f-aae6-47ba5c63",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "ed0fd538-e5af-49ef-83f1-857dbec2",
"trail_name": "promotion-27"
}
}
]
}
]
},
{
"policy_id": "5da6b9e4-a7ca-4e01-b956-f1230198",
"policy_version": 1,
"status": "COMPLIANT",
"rule_evaluations": [
{
"rule": {
"type": "provenance",
"definition": {
"required": false,
"exceptions": []
}
},
"ignored": true,
"resolutions": [
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "80133745-d408-4d48-8407-3052a3ff",
"flow_id": "c1bb83be-5195-4814-9fae-eac6bf67",
"flow_name": "exercises-start-points-ci",
"trail_id": "a45c3f7d-4e84-4500-a9fa-7b7215df",
"trail_name": "e636b153dca7b8279ac24ef1bbc44120f4170fe6"
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "017273bb-222a-4b3f-aae6-47ba5c63",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "ed0fd538-e5af-49ef-83f1-857dbec2",
"trail_name": "promotion-27"
}
}
]
},
{
"rule": {
"type": "trail-compliance",
"definition": {
"required": true,
"exceptions": []
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "80133745-d408-4d48-8407-3052a3ff",
"flow_id": "c1bb83be-5195-4814-9fae-eac6bf67",
"flow_name": "exercises-start-points-ci",
"trail_id": "a45c3f7d-4e84-4500-a9fa-7b7215df",
"trail_name": "e636b153dca7b8279ac24ef1bbc44120f4170fe6",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_satisfied",
"context": {
"artifact_id": "017273bb-222a-4b3f-aae6-47ba5c63",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "ed0fd538-e5af-49ef-83f1-857dbec2",
"trail_name": "promotion-27",
"artifact_status": "COMPLIANT"
}
}
]
}
]
},
{
"policy_id": "a1cb6673-a70d-475c-98c1-77d8a598",
"policy_version": 1,
"status": "COMPLIANT",
"rule_evaluations": [
{
"rule": {
"type": "provenance",
"definition": {
"required": false,
"exceptions": []
}
},
"ignored": true,
"resolutions": [
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "80133745-d408-4d48-8407-3052a3ff",
"flow_id": "c1bb83be-5195-4814-9fae-eac6bf67",
"flow_name": "exercises-start-points-ci",
"trail_id": "a45c3f7d-4e84-4500-a9fa-7b7215df",
"trail_name": "e636b153dca7b8279ac24ef1bbc44120f4170fe6"
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "017273bb-222a-4b3f-aae6-47ba5c63",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "ed0fd538-e5af-49ef-83f1-857dbec2",
"trail_name": "promotion-27"
}
}
]
},
{
"rule": {
"type": "trail-compliance",
"definition": {
"required": false,
"exceptions": []
}
},
"ignored": true,
"resolutions": [
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "80133745-d408-4d48-8407-3052a3ff",
"flow_id": "c1bb83be-5195-4814-9fae-eac6bf67",
"flow_name": "exercises-start-points-ci",
"trail_id": "a45c3f7d-4e84-4500-a9fa-7b7215df",
"trail_name": "e636b153dca7b8279ac24ef1bbc44120f4170fe6",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "017273bb-222a-4b3f-aae6-47ba5c63",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "ed0fd538-e5af-49ef-83f1-857dbec2",
"trail_name": "promotion-27",
"artifact_status": "COMPLIANT"
}
}
]
},
{
"rule": {
"type": "attestation",
"definition": {
"if_condition": {
"text": "flow.tags.kind == \"microservice\" or flow.name == \"aws-snyk-scan\""
},
"name": "*",
"type": "snyk",
"must_be_compliant": true
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "80133745-d408-4d48-8407-3052a3ff",
"flow_id": "c1bb83be-5195-4814-9fae-eac6bf67",
"flow_name": "exercises-start-points-ci",
"trail_id": "a45c3f7d-4e84-4500-a9fa-7b7215df",
"trail_name": "e636b153dca7b8279ac24ef1bbc44120f4170fe6",
"matching_attestation_id": "9a414696-decd-4ec2-91ac-4507a093",
"matching_attestation_name": "snyk-container-scan",
"matching_attestation_type": "snyk",
"matching_attestation_compliance": true
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "017273bb-222a-4b3f-aae6-47ba5c63",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "ed0fd538-e5af-49ef-83f1-857dbec2",
"trail_name": "promotion-27"
}
}
]
}
]
},
{
"policy_id": "d50367a3-f3bb-47f1-af16-d03e9166",
"policy_version": 2,
"status": "COMPLIANT",
"rule_evaluations": [
{
"rule": {
"type": "provenance",
"definition": {
"required": true,
"exceptions": []
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "80133745-d408-4d48-8407-3052a3ff",
"flow_id": "c1bb83be-5195-4814-9fae-eac6bf67",
"flow_name": "exercises-start-points-ci",
"trail_id": "a45c3f7d-4e84-4500-a9fa-7b7215df",
"trail_name": "e636b153dca7b8279ac24ef1bbc44120f4170fe6"
}
},
{
"type": "rule_satisfied",
"context": {
"artifact_id": "017273bb-222a-4b3f-aae6-47ba5c63",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "ed0fd538-e5af-49ef-83f1-857dbec2",
"trail_name": "promotion-27"
}
}
]
},
{
"rule": {
"type": "trail-compliance",
"definition": {
"required": false,
"exceptions": []
}
},
"ignored": true,
"resolutions": [
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "80133745-d408-4d48-8407-3052a3ff",
"flow_id": "c1bb83be-5195-4814-9fae-eac6bf67",
"flow_name": "exercises-start-points-ci",
"trail_id": "a45c3f7d-4e84-4500-a9fa-7b7215df",
"trail_name": "e636b153dca7b8279ac24ef1bbc44120f4170fe6",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "017273bb-222a-4b3f-aae6-47ba5c63",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "ed0fd538-e5af-49ef-83f1-857dbec2",
"trail_name": "promotion-27",
"artifact_status": "COMPLIANT"
}
}
]
}
]
}
],
"reasons_for_incompliance": [],
"fingerprint": "127a436af2699b06411dda018ab68501017f4e0ba6f18a4cf8b96b5cdf44dbe1",
"creationTimestamp": [
1745062752
],
"pods": null,
"annotation": {
"type": "unchanged",
"was": 1,
"now": 1
},
"flow_name": "exercises-start-points-ci",
"git_commit": "e636b153dca7b8279ac24ef1bbc44120f4170fe6",
"commit_url": "https://github.com/cyber-dojo/exercises-start-points/commit/e636b153dca7b8279ac24ef1bbc44120f4170fe6",
"html_url": "https://app.kosli.com/cyber-dojo/flows/exercises-start-points-ci/artifacts/127a436af2699b06411dda018ab68501017f4e0ba6f18a4cf8b96b5cdf44dbe1?artifact_id=80133745-d408-4d48-8407-3052a3ff",
"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/403deb83f948aa88cc2d146d77abbee51ffbcbcf...e636b153dca7b8279ac24ef1bbc44120f4170fe6",
"previous_git_commit": "403deb83f948aa88cc2d146d77abbee51ffbcbcf",
"previous_fingerprint": "16ffac10d5b783ff4221f23c05c100a75b1bd1d170eb4001bcdac4a2c8db885e",
"previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/exercises-start-points:403deb8@sha256:16ffac10d5b783ff4221f23c05c100a75b1bd1d170eb4001bcdac4a2c8db885e",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
"previous_git_commit_url": "https://github.com/cyber-dojo/exercises-start-points/commit/403deb83f948aa88cc2d146d77abbee51ffbcbcf",
"previous_trail_name": "403deb83f948aa88cc2d146d77abbee51ffbcbcf",
"previous_template_reference_name": "exercises-start-points"
},
"commit_lead_time": 761.0,
"flows": [
{
"flow_name": "exercises-start-points-ci",
"trail_name": "e636b153dca7b8279ac24ef1bbc44120f4170fe6",
"template_reference_name": "exercises-start-points",
"git_commit": "e636b153dca7b8279ac24ef1bbc44120f4170fe6",
"commit_url": "https://github.com/cyber-dojo/exercises-start-points/commit/e636b153dca7b8279ac24ef1bbc44120f4170fe6",
"git_commit_info": {
"sha1": "e636b153dca7b8279ac24ef1bbc44120f4170fe6",
"message": "Merge pull request #62 from cyber-dojo/update-base-image-164\n\nRun workflow to pickup new base image",
"author": "Jon Jagger <jon@kosli.com>",
"branch": "main",
"timestamp": 1745061991.0,
"url": "https://github.com/cyber-dojo/exercises-start-points/commit/e636b153dca7b8279ac24ef1bbc44120f4170fe6"
},
"html_url": "https://app.kosli.com/cyber-dojo/flows/exercises-start-points-ci/artifacts/127a436af2699b06411dda018ab68501017f4e0ba6f18a4cf8b96b5cdf44dbe1?artifact_id=80133745-d408-4d48-8407-3052a3ff",
"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/403deb83f948aa88cc2d146d77abbee51ffbcbcf...e636b153dca7b8279ac24ef1bbc44120f4170fe6",
"previous_git_commit": "403deb83f948aa88cc2d146d77abbee51ffbcbcf",
"previous_fingerprint": "16ffac10d5b783ff4221f23c05c100a75b1bd1d170eb4001bcdac4a2c8db885e",
"previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/exercises-start-points:403deb8@sha256:16ffac10d5b783ff4221f23c05c100a75b1bd1d170eb4001bcdac4a2c8db885e",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
"previous_git_commit_url": "https://github.com/cyber-dojo/exercises-start-points/commit/403deb83f948aa88cc2d146d77abbee51ffbcbcf",
"previous_trail_name": "403deb83f948aa88cc2d146d77abbee51ffbcbcf",
"previous_template_reference_name": "exercises-start-points"
},
"commit_lead_time": 761.0,
"artifact_compliance_in_flow": true,
"flow_reasons_for_non_compliance": []
},
{
"flow_name": "production-promotion",
"trail_name": "promotion-27",
"template_reference_name": "exercises-start-points",
"git_commit": "5b2bcf60826ba250234cfb58a8c7261964fc4aa5",
"commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/5b2bcf60826ba250234cfb58a8c7261964fc4aa5",
"git_commit_info": {
"sha1": "5b2bcf60826ba250234cfb58a8c7261964fc4aa5",
"message": "Reinstate sdlc-control-gate",
"author": "JonJagger <jon@kosli.com>",
"branch": "main",
"timestamp": 1745058712.0,
"url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/5b2bcf60826ba250234cfb58a8c7261964fc4aa5"
},
"html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion/artifacts/127a436af2699b06411dda018ab68501017f4e0ba6f18a4cf8b96b5cdf44dbe1?artifact_id=017273bb-222a-4b3f-aae6-47ba5c63",
"flow_html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion",
"deployment_diff": {
"diff_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/compare/6f2892b3629ea32a4e7883286515834108e0b8f0...5b2bcf60826ba250234cfb58a8c7261964fc4aa5",
"previous_git_commit": "6f2892b3629ea32a4e7883286515834108e0b8f0",
"previous_fingerprint": "16ffac10d5b783ff4221f23c05c100a75b1bd1d170eb4001bcdac4a2c8db885e",
"previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/exercises-start-points:403deb8@sha256:16ffac10d5b783ff4221f23c05c100a75b1bd1d170eb4001bcdac4a2c8db885e",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
"previous_git_commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/6f2892b3629ea32a4e7883286515834108e0b8f0",
"previous_trail_name": "promotion-20",
"previous_template_reference_name": "exercises-start-points"
},
"commit_lead_time": 4040.0,
"artifact_compliance_in_flow": true,
"flow_reasons_for_non_compliance": []
}
]
},
{
"name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/languages-start-points:b8162a5@sha256:74c6a245d5737a67e20f0a7ff5af2ac1853eeb6a067ccc269bd38846964eea78",
"deployments": [],
"compliant": true,
"policy_decisions": [
{
"policy_id": "0b0c4d5a-cc1f-4725-8f97-af256289",
"policy_version": 1,
"status": "COMPLIANT",
"rule_evaluations": [
{
"rule": {
"type": "provenance",
"definition": {
"required": false,
"exceptions": []
}
},
"ignored": true,
"resolutions": [
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "08ccad63-76a5-46db-b114-1580b108",
"flow_id": "0b4a3bb0-4f77-41a9-8dea-733d1dc3",
"flow_name": "languages-start-points-ci",
"trail_id": "25510d04-a2ee-4a41-ba34-734e3c1d",
"trail_name": "b8162a55bd719851aae73825b526e007d15eef9b"
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "000a1ede-7485-4231-b1a0-c51d54f7",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "ed0fd538-e5af-49ef-83f1-857dbec2",
"trail_name": "promotion-27"
}
}
]
},
{
"rule": {
"type": "trail-compliance",
"definition": {
"required": false,
"exceptions": []
}
},
"ignored": true,
"resolutions": [
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "08ccad63-76a5-46db-b114-1580b108",
"flow_id": "0b4a3bb0-4f77-41a9-8dea-733d1dc3",
"flow_name": "languages-start-points-ci",
"trail_id": "25510d04-a2ee-4a41-ba34-734e3c1d",
"trail_name": "b8162a55bd719851aae73825b526e007d15eef9b",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "000a1ede-7485-4231-b1a0-c51d54f7",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "ed0fd538-e5af-49ef-83f1-857dbec2",
"trail_name": "promotion-27",
"artifact_status": "COMPLIANT"
}
}
]
},
{
"rule": {
"type": "attestation",
"definition": {
"if_condition": {
"text": "flow.tags.kind == \"microservice\""
},
"name": "*",
"type": "pull_request",
"must_be_compliant": true
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "08ccad63-76a5-46db-b114-1580b108",
"flow_id": "0b4a3bb0-4f77-41a9-8dea-733d1dc3",
"flow_name": "languages-start-points-ci",
"trail_id": "25510d04-a2ee-4a41-ba34-734e3c1d",
"trail_name": "b8162a55bd719851aae73825b526e007d15eef9b",
"matching_attestation_id": "ee599279-6309-46c2-9610-eee82f4d",
"matching_attestation_name": "pull-request",
"matching_attestation_type": "pull_request",
"matching_attestation_compliance": true
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "000a1ede-7485-4231-b1a0-c51d54f7",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "ed0fd538-e5af-49ef-83f1-857dbec2",
"trail_name": "promotion-27"
}
}
]
}
]
},
{
"policy_id": "5da6b9e4-a7ca-4e01-b956-f1230198",
"policy_version": 1,
"status": "COMPLIANT",
"rule_evaluations": [
{
"rule": {
"type": "provenance",
"definition": {
"required": false,
"exceptions": []
}
},
"ignored": true,
"resolutions": [
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "08ccad63-76a5-46db-b114-1580b108",
"flow_id": "0b4a3bb0-4f77-41a9-8dea-733d1dc3",
"flow_name": "languages-start-points-ci",
"trail_id": "25510d04-a2ee-4a41-ba34-734e3c1d",
"trail_name": "b8162a55bd719851aae73825b526e007d15eef9b"
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "000a1ede-7485-4231-b1a0-c51d54f7",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "ed0fd538-e5af-49ef-83f1-857dbec2",
"trail_name": "promotion-27"
}
}
]
},
{
"rule": {
"type": "trail-compliance",
"definition": {
"required": true,
"exceptions": []
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "08ccad63-76a5-46db-b114-1580b108",
"flow_id": "0b4a3bb0-4f77-41a9-8dea-733d1dc3",
"flow_name": "languages-start-points-ci",
"trail_id": "25510d04-a2ee-4a41-ba34-734e3c1d",
"trail_name": "b8162a55bd719851aae73825b526e007d15eef9b",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_satisfied",
"context": {
"artifact_id": "000a1ede-7485-4231-b1a0-c51d54f7",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "ed0fd538-e5af-49ef-83f1-857dbec2",
"trail_name": "promotion-27",
"artifact_status": "COMPLIANT"
}
}
]
}
]
},
{
"policy_id": "a1cb6673-a70d-475c-98c1-77d8a598",
"policy_version": 1,
"status": "COMPLIANT",
"rule_evaluations": [
{
"rule": {
"type": "provenance",
"definition": {
"required": false,
"exceptions": []
}
},
"ignored": true,
"resolutions": [
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "08ccad63-76a5-46db-b114-1580b108",
"flow_id": "0b4a3bb0-4f77-41a9-8dea-733d1dc3",
"flow_name": "languages-start-points-ci",
"trail_id": "25510d04-a2ee-4a41-ba34-734e3c1d",
"trail_name": "b8162a55bd719851aae73825b526e007d15eef9b"
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "000a1ede-7485-4231-b1a0-c51d54f7",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "ed0fd538-e5af-49ef-83f1-857dbec2",
"trail_name": "promotion-27"
}
}
]
},
{
"rule": {
"type": "trail-compliance",
"definition": {
"required": false,
"exceptions": []
}
},
"ignored": true,
"resolutions": [
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "08ccad63-76a5-46db-b114-1580b108",
"flow_id": "0b4a3bb0-4f77-41a9-8dea-733d1dc3",
"flow_name": "languages-start-points-ci",
"trail_id": "25510d04-a2ee-4a41-ba34-734e3c1d",
"trail_name": "b8162a55bd719851aae73825b526e007d15eef9b",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "000a1ede-7485-4231-b1a0-c51d54f7",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "ed0fd538-e5af-49ef-83f1-857dbec2",
"trail_name": "promotion-27",
"artifact_status": "COMPLIANT"
}
}
]
},
{
"rule": {
"type": "attestation",
"definition": {
"if_condition": {
"text": "flow.tags.kind == \"microservice\" or flow.name == \"aws-snyk-scan\""
},
"name": "*",
"type": "snyk",
"must_be_compliant": true
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "08ccad63-76a5-46db-b114-1580b108",
"flow_id": "0b4a3bb0-4f77-41a9-8dea-733d1dc3",
"flow_name": "languages-start-points-ci",
"trail_id": "25510d04-a2ee-4a41-ba34-734e3c1d",
"trail_name": "b8162a55bd719851aae73825b526e007d15eef9b",
"matching_attestation_id": "47a0774b-c6f6-4f7f-898e-ea7732bb",
"matching_attestation_name": "snyk-container-scan",
"matching_attestation_type": "snyk",
"matching_attestation_compliance": true
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "000a1ede-7485-4231-b1a0-c51d54f7",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "ed0fd538-e5af-49ef-83f1-857dbec2",
"trail_name": "promotion-27"
}
}
]
}
]
},
{
"policy_id": "d50367a3-f3bb-47f1-af16-d03e9166",
"policy_version": 2,
"status": "COMPLIANT",
"rule_evaluations": [
{
"rule": {
"type": "provenance",
"definition": {
"required": true,
"exceptions": []
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "08ccad63-76a5-46db-b114-1580b108",
"flow_id": "0b4a3bb0-4f77-41a9-8dea-733d1dc3",
"flow_name": "languages-start-points-ci",
"trail_id": "25510d04-a2ee-4a41-ba34-734e3c1d",
"trail_name": "b8162a55bd719851aae73825b526e007d15eef9b"
}
},
{
"type": "rule_satisfied",
"context": {
"artifact_id": "000a1ede-7485-4231-b1a0-c51d54f7",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "ed0fd538-e5af-49ef-83f1-857dbec2",
"trail_name": "promotion-27"
}
}
]
},
{
"rule": {
"type": "trail-compliance",
"definition": {
"required": false,
"exceptions": []
}
},
"ignored": true,
"resolutions": [
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "08ccad63-76a5-46db-b114-1580b108",
"flow_id": "0b4a3bb0-4f77-41a9-8dea-733d1dc3",
"flow_name": "languages-start-points-ci",
"trail_id": "25510d04-a2ee-4a41-ba34-734e3c1d",
"trail_name": "b8162a55bd719851aae73825b526e007d15eef9b",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "000a1ede-7485-4231-b1a0-c51d54f7",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "ed0fd538-e5af-49ef-83f1-857dbec2",
"trail_name": "promotion-27",
"artifact_status": "COMPLIANT"
}
}
]
}
]
}
],
"reasons_for_incompliance": [],
"fingerprint": "74c6a245d5737a67e20f0a7ff5af2ac1853eeb6a067ccc269bd38846964eea78",
"creationTimestamp": [
1745062752
],
"pods": null,
"annotation": {
"type": "unchanged",
"was": 1,
"now": 1
},
"flow_name": "languages-start-points-ci",
"git_commit": "b8162a55bd719851aae73825b526e007d15eef9b",
"commit_url": "https://github.com/cyber-dojo/languages-start-points/commit/b8162a55bd719851aae73825b526e007d15eef9b",
"html_url": "https://app.kosli.com/cyber-dojo/flows/languages-start-points-ci/artifacts/74c6a245d5737a67e20f0a7ff5af2ac1853eeb6a067ccc269bd38846964eea78?artifact_id=08ccad63-76a5-46db-b114-1580b108",
"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/9e46c527d593b634b531134cc896e02d27c66862...b8162a55bd719851aae73825b526e007d15eef9b",
"previous_git_commit": "9e46c527d593b634b531134cc896e02d27c66862",
"previous_fingerprint": "391e33436b805506713de9c2bcf180ba8dd44a70ba2e3afb26a5d597693e27a7",
"previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/languages-start-points:9e46c52@sha256:391e33436b805506713de9c2bcf180ba8dd44a70ba2e3afb26a5d597693e27a7",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
"previous_git_commit_url": "https://github.com/cyber-dojo/languages-start-points/commit/9e46c527d593b634b531134cc896e02d27c66862",
"previous_trail_name": "9e46c527d593b634b531134cc896e02d27c66862",
"previous_template_reference_name": "languages-start-points"
},
"commit_lead_time": 653.0,
"flows": [
{
"flow_name": "languages-start-points-ci",
"trail_name": "b8162a55bd719851aae73825b526e007d15eef9b",
"template_reference_name": "languages-start-points",
"git_commit": "b8162a55bd719851aae73825b526e007d15eef9b",
"commit_url": "https://github.com/cyber-dojo/languages-start-points/commit/b8162a55bd719851aae73825b526e007d15eef9b",
"git_commit_info": {
"sha1": "b8162a55bd719851aae73825b526e007d15eef9b",
"message": "Merge pull request #69 from cyber-dojo/update-base-image-187\n\nRun workflow to pickup new base image",
"author": "Jon Jagger <jon@kosli.com>",
"branch": "main",
"timestamp": 1745062099.0,
"url": "https://github.com/cyber-dojo/languages-start-points/commit/b8162a55bd719851aae73825b526e007d15eef9b"
},
"html_url": "https://app.kosli.com/cyber-dojo/flows/languages-start-points-ci/artifacts/74c6a245d5737a67e20f0a7ff5af2ac1853eeb6a067ccc269bd38846964eea78?artifact_id=08ccad63-76a5-46db-b114-1580b108",
"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/9e46c527d593b634b531134cc896e02d27c66862...b8162a55bd719851aae73825b526e007d15eef9b",
"previous_git_commit": "9e46c527d593b634b531134cc896e02d27c66862",
"previous_fingerprint": "391e33436b805506713de9c2bcf180ba8dd44a70ba2e3afb26a5d597693e27a7",
"previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/languages-start-points:9e46c52@sha256:391e33436b805506713de9c2bcf180ba8dd44a70ba2e3afb26a5d597693e27a7",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
"previous_git_commit_url": "https://github.com/cyber-dojo/languages-start-points/commit/9e46c527d593b634b531134cc896e02d27c66862",
"previous_trail_name": "9e46c527d593b634b531134cc896e02d27c66862",
"previous_template_reference_name": "languages-start-points"
},
"commit_lead_time": 653.0,
"artifact_compliance_in_flow": true,
"flow_reasons_for_non_compliance": []
},
{
"flow_name": "production-promotion",
"trail_name": "promotion-27",
"template_reference_name": "languages-start-points",
"git_commit": "5b2bcf60826ba250234cfb58a8c7261964fc4aa5",
"commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/5b2bcf60826ba250234cfb58a8c7261964fc4aa5",
"git_commit_info": {
"sha1": "5b2bcf60826ba250234cfb58a8c7261964fc4aa5",
"message": "Reinstate sdlc-control-gate",
"author": "JonJagger <jon@kosli.com>",
"branch": "main",
"timestamp": 1745058712.0,
"url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/5b2bcf60826ba250234cfb58a8c7261964fc4aa5"
},
"html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion/artifacts/74c6a245d5737a67e20f0a7ff5af2ac1853eeb6a067ccc269bd38846964eea78?artifact_id=000a1ede-7485-4231-b1a0-c51d54f7",
"flow_html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion",
"deployment_diff": {
"diff_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/compare/6f2892b3629ea32a4e7883286515834108e0b8f0...5b2bcf60826ba250234cfb58a8c7261964fc4aa5",
"previous_git_commit": "6f2892b3629ea32a4e7883286515834108e0b8f0",
"previous_fingerprint": "391e33436b805506713de9c2bcf180ba8dd44a70ba2e3afb26a5d597693e27a7",
"previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/languages-start-points:9e46c52@sha256:391e33436b805506713de9c2bcf180ba8dd44a70ba2e3afb26a5d597693e27a7",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
"previous_git_commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/6f2892b3629ea32a4e7883286515834108e0b8f0",
"previous_trail_name": "promotion-20",
"previous_template_reference_name": "languages-start-points"
},
"commit_lead_time": 4040.0,
"artifact_compliance_in_flow": true,
"flow_reasons_for_non_compliance": []
}
]
},
{
"name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:03b8aa5@sha256:798e1556cc785bc48a03499e50a4e8820f071b25f2a9dec021c4cb4b6b266a54",
"deployments": [],
"compliant": true,
"policy_decisions": [
{
"policy_id": "0b0c4d5a-cc1f-4725-8f97-af256289",
"policy_version": 1,
"status": "COMPLIANT",
"rule_evaluations": [
{
"rule": {
"type": "provenance",
"definition": {
"required": false,
"exceptions": []
}
},
"ignored": true,
"resolutions": [
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "b3003e78-88f0-44db-a78f-fc3c1e58",
"flow_id": "fd583a48-28de-4b5c-b4a7-b6356e94",
"flow_name": "web-ci",
"trail_id": "3c2ba174-1247-4d79-8947-b83f3137",
"trail_name": "03b8aa567c0380e48e916d8ad0b81bd3109e6436"
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "de19d702-919b-4fd2-af14-a7b2588d",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "ae541688-5230-437a-a1ea-eb15aa3f",
"trail_name": "promotion-26"
}
}
]
},
{
"rule": {
"type": "trail-compliance",
"definition": {
"required": false,
"exceptions": []
}
},
"ignored": true,
"resolutions": [
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "b3003e78-88f0-44db-a78f-fc3c1e58",
"flow_id": "fd583a48-28de-4b5c-b4a7-b6356e94",
"flow_name": "web-ci",
"trail_id": "3c2ba174-1247-4d79-8947-b83f3137",
"trail_name": "03b8aa567c0380e48e916d8ad0b81bd3109e6436",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "de19d702-919b-4fd2-af14-a7b2588d",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "ae541688-5230-437a-a1ea-eb15aa3f",
"trail_name": "promotion-26",
"artifact_status": "COMPLIANT"
}
}
]
},
{
"rule": {
"type": "attestation",
"definition": {
"if_condition": {
"text": "flow.tags.kind == \"microservice\""
},
"name": "*",
"type": "pull_request",
"must_be_compliant": true
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "b3003e78-88f0-44db-a78f-fc3c1e58",
"flow_id": "fd583a48-28de-4b5c-b4a7-b6356e94",
"flow_name": "web-ci",
"trail_id": "3c2ba174-1247-4d79-8947-b83f3137",
"trail_name": "03b8aa567c0380e48e916d8ad0b81bd3109e6436",
"matching_attestation_id": "5c16bc59-c4ce-42f5-8a37-51f21727",
"matching_attestation_name": "pull-request",
"matching_attestation_type": "pull_request",
"matching_attestation_compliance": true
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "de19d702-919b-4fd2-af14-a7b2588d",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "ae541688-5230-437a-a1ea-eb15aa3f",
"trail_name": "promotion-26"
}
}
]
}
]
},
{
"policy_id": "5da6b9e4-a7ca-4e01-b956-f1230198",
"policy_version": 1,
"status": "COMPLIANT",
"rule_evaluations": [
{
"rule": {
"type": "provenance",
"definition": {
"required": false,
"exceptions": []
}
},
"ignored": true,
"resolutions": [
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "b3003e78-88f0-44db-a78f-fc3c1e58",
"flow_id": "fd583a48-28de-4b5c-b4a7-b6356e94",
"flow_name": "web-ci",
"trail_id": "3c2ba174-1247-4d79-8947-b83f3137",
"trail_name": "03b8aa567c0380e48e916d8ad0b81bd3109e6436"
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "de19d702-919b-4fd2-af14-a7b2588d",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "ae541688-5230-437a-a1ea-eb15aa3f",
"trail_name": "promotion-26"
}
}
]
},
{
"rule": {
"type": "trail-compliance",
"definition": {
"required": true,
"exceptions": []
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "b3003e78-88f0-44db-a78f-fc3c1e58",
"flow_id": "fd583a48-28de-4b5c-b4a7-b6356e94",
"flow_name": "web-ci",
"trail_id": "3c2ba174-1247-4d79-8947-b83f3137",
"trail_name": "03b8aa567c0380e48e916d8ad0b81bd3109e6436",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_satisfied",
"context": {
"artifact_id": "de19d702-919b-4fd2-af14-a7b2588d",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "ae541688-5230-437a-a1ea-eb15aa3f",
"trail_name": "promotion-26",
"artifact_status": "COMPLIANT"
}
}
]
}
]
},
{
"policy_id": "a1cb6673-a70d-475c-98c1-77d8a598",
"policy_version": 1,
"status": "COMPLIANT",
"rule_evaluations": [
{
"rule": {
"type": "provenance",
"definition": {
"required": false,
"exceptions": []
}
},
"ignored": true,
"resolutions": [
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "b3003e78-88f0-44db-a78f-fc3c1e58",
"flow_id": "fd583a48-28de-4b5c-b4a7-b6356e94",
"flow_name": "web-ci",
"trail_id": "3c2ba174-1247-4d79-8947-b83f3137",
"trail_name": "03b8aa567c0380e48e916d8ad0b81bd3109e6436"
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "de19d702-919b-4fd2-af14-a7b2588d",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "ae541688-5230-437a-a1ea-eb15aa3f",
"trail_name": "promotion-26"
}
}
]
},
{
"rule": {
"type": "trail-compliance",
"definition": {
"required": false,
"exceptions": []
}
},
"ignored": true,
"resolutions": [
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "b3003e78-88f0-44db-a78f-fc3c1e58",
"flow_id": "fd583a48-28de-4b5c-b4a7-b6356e94",
"flow_name": "web-ci",
"trail_id": "3c2ba174-1247-4d79-8947-b83f3137",
"trail_name": "03b8aa567c0380e48e916d8ad0b81bd3109e6436",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "de19d702-919b-4fd2-af14-a7b2588d",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "ae541688-5230-437a-a1ea-eb15aa3f",
"trail_name": "promotion-26",
"artifact_status": "COMPLIANT"
}
}
]
},
{
"rule": {
"type": "attestation",
"definition": {
"if_condition": {
"text": "flow.tags.kind == \"microservice\" or flow.name == \"aws-snyk-scan\""
},
"name": "*",
"type": "snyk",
"must_be_compliant": true
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "b3003e78-88f0-44db-a78f-fc3c1e58",
"flow_id": "fd583a48-28de-4b5c-b4a7-b6356e94",
"flow_name": "web-ci",
"trail_id": "3c2ba174-1247-4d79-8947-b83f3137",
"trail_name": "03b8aa567c0380e48e916d8ad0b81bd3109e6436",
"matching_attestation_id": "000642f2-9725-4b19-86c1-357679e2",
"matching_attestation_name": "snyk-container-scan",
"matching_attestation_type": "snyk",
"matching_attestation_compliance": true
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "de19d702-919b-4fd2-af14-a7b2588d",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "ae541688-5230-437a-a1ea-eb15aa3f",
"trail_name": "promotion-26"
}
}
]
}
]
},
{
"policy_id": "d50367a3-f3bb-47f1-af16-d03e9166",
"policy_version": 2,
"status": "COMPLIANT",
"rule_evaluations": [
{
"rule": {
"type": "provenance",
"definition": {
"required": true,
"exceptions": []
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "b3003e78-88f0-44db-a78f-fc3c1e58",
"flow_id": "fd583a48-28de-4b5c-b4a7-b6356e94",
"flow_name": "web-ci",
"trail_id": "3c2ba174-1247-4d79-8947-b83f3137",
"trail_name": "03b8aa567c0380e48e916d8ad0b81bd3109e6436"
}
},
{
"type": "rule_satisfied",
"context": {
"artifact_id": "de19d702-919b-4fd2-af14-a7b2588d",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "ae541688-5230-437a-a1ea-eb15aa3f",
"trail_name": "promotion-26"
}
}
]
},
{
"rule": {
"type": "trail-compliance",
"definition": {
"required": false,
"exceptions": []
}
},
"ignored": true,
"resolutions": [
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "b3003e78-88f0-44db-a78f-fc3c1e58",
"flow_id": "fd583a48-28de-4b5c-b4a7-b6356e94",
"flow_name": "web-ci",
"trail_id": "3c2ba174-1247-4d79-8947-b83f3137",
"trail_name": "03b8aa567c0380e48e916d8ad0b81bd3109e6436",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "de19d702-919b-4fd2-af14-a7b2588d",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "ae541688-5230-437a-a1ea-eb15aa3f",
"trail_name": "promotion-26",
"artifact_status": "COMPLIANT"
}
}
]
}
]
}
],
"reasons_for_incompliance": [],
"fingerprint": "798e1556cc785bc48a03499e50a4e8820f071b25f2a9dec021c4cb4b6b266a54",
"creationTimestamp": [
1745058894,
1745058964,
1745058969
],
"pods": null,
"annotation": {
"type": "unchanged",
"was": 3,
"now": 3
},
"flow_name": "web-ci",
"git_commit": "03b8aa567c0380e48e916d8ad0b81bd3109e6436",
"commit_url": "https://github.com/cyber-dojo/web/commit/03b8aa567c0380e48e916d8ad0b81bd3109e6436",
"html_url": "https://app.kosli.com/cyber-dojo/flows/web-ci/artifacts/798e1556cc785bc48a03499e50a4e8820f071b25f2a9dec021c4cb4b6b266a54?artifact_id=b3003e78-88f0-44db-a78f-fc3c1e58",
"flow_html_url": "https://app.kosli.com/cyber-dojo/flows/web-ci",
"deployment_diff": {
"diff_url": "https://github.com/cyber-dojo/web/compare/d8ce0544672598f2e7ff2787726472853cc75914...03b8aa567c0380e48e916d8ad0b81bd3109e6436",
"previous_git_commit": "d8ce0544672598f2e7ff2787726472853cc75914",
"previous_fingerprint": "dc0d054dab6e74909055522f10e9c7145c9033ee7d07dbb45db72e83e993192a",
"previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:d8ce054@sha256:dc0d054dab6e74909055522f10e9c7145c9033ee7d07dbb45db72e83e993192a",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
"previous_git_commit_url": "https://github.com/cyber-dojo/web/commit/d8ce0544672598f2e7ff2787726472853cc75914",
"previous_trail_name": "d8ce0544672598f2e7ff2787726472853cc75914",
"previous_template_reference_name": "web"
},
"commit_lead_time": 2292.0,
"flows": [
{
"flow_name": "web-ci",
"trail_name": "03b8aa567c0380e48e916d8ad0b81bd3109e6436",
"template_reference_name": "web",
"git_commit": "03b8aa567c0380e48e916d8ad0b81bd3109e6436",
"commit_url": "https://github.com/cyber-dojo/web/commit/03b8aa567c0380e48e916d8ad0b81bd3109e6436",
"git_commit_info": {
"sha1": "03b8aa567c0380e48e916d8ad0b81bd3109e6436",
"message": "Update base image to fix new snyk vuln (#174)",
"author": "Jon Jagger <jon@kosli.com>",
"branch": "",
"timestamp": 1745056602.0,
"url": "https://github.com/cyber-dojo/web/commit/03b8aa567c0380e48e916d8ad0b81bd3109e6436"
},
"html_url": "https://app.kosli.com/cyber-dojo/flows/web-ci/artifacts/798e1556cc785bc48a03499e50a4e8820f071b25f2a9dec021c4cb4b6b266a54?artifact_id=b3003e78-88f0-44db-a78f-fc3c1e58",
"flow_html_url": "https://app.kosli.com/cyber-dojo/flows/web-ci",
"deployment_diff": {
"diff_url": "https://github.com/cyber-dojo/web/compare/d8ce0544672598f2e7ff2787726472853cc75914...03b8aa567c0380e48e916d8ad0b81bd3109e6436",
"previous_git_commit": "d8ce0544672598f2e7ff2787726472853cc75914",
"previous_fingerprint": "dc0d054dab6e74909055522f10e9c7145c9033ee7d07dbb45db72e83e993192a",
"previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:d8ce054@sha256:dc0d054dab6e74909055522f10e9c7145c9033ee7d07dbb45db72e83e993192a",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
"previous_git_commit_url": "https://github.com/cyber-dojo/web/commit/d8ce0544672598f2e7ff2787726472853cc75914",
"previous_trail_name": "d8ce0544672598f2e7ff2787726472853cc75914",
"previous_template_reference_name": "web"
},
"commit_lead_time": 2292.0,
"artifact_compliance_in_flow": true,
"flow_reasons_for_non_compliance": []
},
{
"flow_name": "production-promotion",
"trail_name": "promotion-26",
"template_reference_name": "web",
"git_commit": "5b2bcf60826ba250234cfb58a8c7261964fc4aa5",
"commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/5b2bcf60826ba250234cfb58a8c7261964fc4aa5",
"git_commit_info": {
"sha1": "5b2bcf60826ba250234cfb58a8c7261964fc4aa5",
"message": "Reinstate sdlc-control-gate",
"author": "JonJagger <jon@kosli.com>",
"branch": "main",
"timestamp": 1745058712.0,
"url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/5b2bcf60826ba250234cfb58a8c7261964fc4aa5"
},
"html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion/artifacts/798e1556cc785bc48a03499e50a4e8820f071b25f2a9dec021c4cb4b6b266a54?artifact_id=de19d702-919b-4fd2-af14-a7b2588d",
"flow_html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion",
"deployment_diff": {
"diff_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/compare/194a5764d7b94fae08a541e436ce6d8495edf434...5b2bcf60826ba250234cfb58a8c7261964fc4aa5",
"previous_git_commit": "194a5764d7b94fae08a541e436ce6d8495edf434",
"previous_fingerprint": "dc0d054dab6e74909055522f10e9c7145c9033ee7d07dbb45db72e83e993192a",
"previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:d8ce054@sha256:dc0d054dab6e74909055522f10e9c7145c9033ee7d07dbb45db72e83e993192a",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
"previous_git_commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/194a5764d7b94fae08a541e436ce6d8495edf434",
"previous_trail_name": "promotion-22",
"previous_template_reference_name": "web"
},
"commit_lead_time": 182.0,
"artifact_compliance_in_flow": true,
"flow_reasons_for_non_compliance": []
}
]
},
{
"name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/creator:2a45a2b@sha256:1834733fcc22c849dd88f593c0de64acb107e13f9de907d7f320abfe968023f8",
"deployments": [],
"compliant": true,
"policy_decisions": [
{
"policy_id": "0b0c4d5a-cc1f-4725-8f97-af256289",
"policy_version": 1,
"status": "COMPLIANT",
"rule_evaluations": [
{
"rule": {
"type": "provenance",
"definition": {
"required": false,
"exceptions": []
}
},
"ignored": true,
"resolutions": [
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "11568bc3-1348-4a47-8704-d57608a6",
"flow_id": "e4e08b57-e36e-4724-acc8-04e7e437",
"flow_name": "creator-ci",
"trail_id": "7071d39a-4a75-4aa2-9c84-ae010a61",
"trail_name": "2a45a2bfa034ce2cd45019bfa8d2bd7cf1ba95d5"
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "2ead1400-a72d-494e-8834-756f4bfb",
"flow_id": "906eb7a4-5f15-4ca2-ae43-47749f73",
"flow_name": "aws-snyk-scan",
"trail_id": "47184b40-f29e-47cb-b959-a7bedee3",
"trail_name": "creator-1834733fcc22c849dd88f593c0de64acb107e13f9de907d7f320abfe968023f8"
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "5e5d863b-b372-43ae-923b-63c2d7b6",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "ae541688-5230-437a-a1ea-eb15aa3f",
"trail_name": "promotion-26"
}
}
]
},
{
"rule": {
"type": "trail-compliance",
"definition": {
"required": false,
"exceptions": []
}
},
"ignored": true,
"resolutions": [
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "11568bc3-1348-4a47-8704-d57608a6",
"flow_id": "e4e08b57-e36e-4724-acc8-04e7e437",
"flow_name": "creator-ci",
"trail_id": "7071d39a-4a75-4aa2-9c84-ae010a61",
"trail_name": "2a45a2bfa034ce2cd45019bfa8d2bd7cf1ba95d5",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "2ead1400-a72d-494e-8834-756f4bfb",
"flow_id": "906eb7a4-5f15-4ca2-ae43-47749f73",
"flow_name": "aws-snyk-scan",
"trail_id": "47184b40-f29e-47cb-b959-a7bedee3",
"trail_name": "creator-1834733fcc22c849dd88f593c0de64acb107e13f9de907d7f320abfe968023f8",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "5e5d863b-b372-43ae-923b-63c2d7b6",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "ae541688-5230-437a-a1ea-eb15aa3f",
"trail_name": "promotion-26",
"artifact_status": "COMPLIANT"
}
}
]
},
{
"rule": {
"type": "attestation",
"definition": {
"if_condition": {
"text": "flow.tags.kind == \"microservice\""
},
"name": "*",
"type": "pull_request",
"must_be_compliant": true
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "11568bc3-1348-4a47-8704-d57608a6",
"flow_id": "e4e08b57-e36e-4724-acc8-04e7e437",
"flow_name": "creator-ci",
"trail_id": "7071d39a-4a75-4aa2-9c84-ae010a61",
"trail_name": "2a45a2bfa034ce2cd45019bfa8d2bd7cf1ba95d5",
"matching_attestation_id": "f45fcd42-6fd8-46fe-bc3d-6dab3517",
"matching_attestation_name": "pull-request",
"matching_attestation_type": "pull_request",
"matching_attestation_compliance": true
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "2ead1400-a72d-494e-8834-756f4bfb",
"flow_id": "906eb7a4-5f15-4ca2-ae43-47749f73",
"flow_name": "aws-snyk-scan",
"trail_id": "47184b40-f29e-47cb-b959-a7bedee3",
"trail_name": "creator-1834733fcc22c849dd88f593c0de64acb107e13f9de907d7f320abfe968023f8"
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "5e5d863b-b372-43ae-923b-63c2d7b6",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "ae541688-5230-437a-a1ea-eb15aa3f",
"trail_name": "promotion-26"
}
}
]
}
]
},
{
"policy_id": "5da6b9e4-a7ca-4e01-b956-f1230198",
"policy_version": 1,
"status": "COMPLIANT",
"rule_evaluations": [
{
"rule": {
"type": "provenance",
"definition": {
"required": false,
"exceptions": []
}
},
"ignored": true,
"resolutions": [
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "11568bc3-1348-4a47-8704-d57608a6",
"flow_id": "e4e08b57-e36e-4724-acc8-04e7e437",
"flow_name": "creator-ci",
"trail_id": "7071d39a-4a75-4aa2-9c84-ae010a61",
"trail_name": "2a45a2bfa034ce2cd45019bfa8d2bd7cf1ba95d5"
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "2ead1400-a72d-494e-8834-756f4bfb",
"flow_id": "906eb7a4-5f15-4ca2-ae43-47749f73",
"flow_name": "aws-snyk-scan",
"trail_id": "47184b40-f29e-47cb-b959-a7bedee3",
"trail_name": "creator-1834733fcc22c849dd88f593c0de64acb107e13f9de907d7f320abfe968023f8"
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "5e5d863b-b372-43ae-923b-63c2d7b6",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "ae541688-5230-437a-a1ea-eb15aa3f",
"trail_name": "promotion-26"
}
}
]
},
{
"rule": {
"type": "trail-compliance",
"definition": {
"required": true,
"exceptions": []
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "11568bc3-1348-4a47-8704-d57608a6",
"flow_id": "e4e08b57-e36e-4724-acc8-04e7e437",
"flow_name": "creator-ci",
"trail_id": "7071d39a-4a75-4aa2-9c84-ae010a61",
"trail_name": "2a45a2bfa034ce2cd45019bfa8d2bd7cf1ba95d5",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_satisfied",
"context": {
"artifact_id": "2ead1400-a72d-494e-8834-756f4bfb",
"flow_id": "906eb7a4-5f15-4ca2-ae43-47749f73",
"flow_name": "aws-snyk-scan",
"trail_id": "47184b40-f29e-47cb-b959-a7bedee3",
"trail_name": "creator-1834733fcc22c849dd88f593c0de64acb107e13f9de907d7f320abfe968023f8",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_satisfied",
"context": {
"artifact_id": "5e5d863b-b372-43ae-923b-63c2d7b6",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "ae541688-5230-437a-a1ea-eb15aa3f",
"trail_name": "promotion-26",
"artifact_status": "COMPLIANT"
}
}
]
}
]
},
{
"policy_id": "a1cb6673-a70d-475c-98c1-77d8a598",
"policy_version": 1,
"status": "COMPLIANT",
"rule_evaluations": [
{
"rule": {
"type": "provenance",
"definition": {
"required": false,
"exceptions": []
}
},
"ignored": true,
"resolutions": [
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "11568bc3-1348-4a47-8704-d57608a6",
"flow_id": "e4e08b57-e36e-4724-acc8-04e7e437",
"flow_name": "creator-ci",
"trail_id": "7071d39a-4a75-4aa2-9c84-ae010a61",
"trail_name": "2a45a2bfa034ce2cd45019bfa8d2bd7cf1ba95d5"
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "2ead1400-a72d-494e-8834-756f4bfb",
"flow_id": "906eb7a4-5f15-4ca2-ae43-47749f73",
"flow_name": "aws-snyk-scan",
"trail_id": "47184b40-f29e-47cb-b959-a7bedee3",
"trail_name": "creator-1834733fcc22c849dd88f593c0de64acb107e13f9de907d7f320abfe968023f8"
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "5e5d863b-b372-43ae-923b-63c2d7b6",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "ae541688-5230-437a-a1ea-eb15aa3f",
"trail_name": "promotion-26"
}
}
]
},
{
"rule": {
"type": "trail-compliance",
"definition": {
"required": false,
"exceptions": []
}
},
"ignored": true,
"resolutions": [
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "11568bc3-1348-4a47-8704-d57608a6",
"flow_id": "e4e08b57-e36e-4724-acc8-04e7e437",
"flow_name": "creator-ci",
"trail_id": "7071d39a-4a75-4aa2-9c84-ae010a61",
"trail_name": "2a45a2bfa034ce2cd45019bfa8d2bd7cf1ba95d5",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "2ead1400-a72d-494e-8834-756f4bfb",
"flow_id": "906eb7a4-5f15-4ca2-ae43-47749f73",
"flow_name": "aws-snyk-scan",
"trail_id": "47184b40-f29e-47cb-b959-a7bedee3",
"trail_name": "creator-1834733fcc22c849dd88f593c0de64acb107e13f9de907d7f320abfe968023f8",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "5e5d863b-b372-43ae-923b-63c2d7b6",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "ae541688-5230-437a-a1ea-eb15aa3f",
"trail_name": "promotion-26",
"artifact_status": "COMPLIANT"
}
}
]
},
{
"rule": {
"type": "attestation",
"definition": {
"if_condition": {
"text": "flow.tags.kind == \"microservice\" or flow.name == \"aws-snyk-scan\""
},
"name": "*",
"type": "snyk",
"must_be_compliant": true
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "11568bc3-1348-4a47-8704-d57608a6",
"flow_id": "e4e08b57-e36e-4724-acc8-04e7e437",
"flow_name": "creator-ci",
"trail_id": "7071d39a-4a75-4aa2-9c84-ae010a61",
"trail_name": "2a45a2bfa034ce2cd45019bfa8d2bd7cf1ba95d5",
"matching_attestation_id": "8bf4aa44-aed3-47d0-97e5-c123d51c",
"matching_attestation_name": "snyk-container-scan",
"matching_attestation_type": "snyk",
"matching_attestation_compliance": true
}
},
{
"type": "rule_satisfied",
"context": {
"artifact_id": "2ead1400-a72d-494e-8834-756f4bfb",
"flow_id": "906eb7a4-5f15-4ca2-ae43-47749f73",
"flow_name": "aws-snyk-scan",
"trail_id": "47184b40-f29e-47cb-b959-a7bedee3",
"trail_name": "creator-1834733fcc22c849dd88f593c0de64acb107e13f9de907d7f320abfe968023f8",
"matching_attestation_id": "619f37ce-9487-47ba-b174-ec1e79b5",
"matching_attestation_name": "snyk-container-scan",
"matching_attestation_type": "snyk",
"matching_attestation_compliance": true
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "5e5d863b-b372-43ae-923b-63c2d7b6",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "ae541688-5230-437a-a1ea-eb15aa3f",
"trail_name": "promotion-26"
}
}
]
}
]
},
{
"policy_id": "d50367a3-f3bb-47f1-af16-d03e9166",
"policy_version": 2,
"status": "COMPLIANT",
"rule_evaluations": [
{
"rule": {
"type": "provenance",
"definition": {
"required": true,
"exceptions": []
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "11568bc3-1348-4a47-8704-d57608a6",
"flow_id": "e4e08b57-e36e-4724-acc8-04e7e437",
"flow_name": "creator-ci",
"trail_id": "7071d39a-4a75-4aa2-9c84-ae010a61",
"trail_name": "2a45a2bfa034ce2cd45019bfa8d2bd7cf1ba95d5"
}
},
{
"type": "rule_satisfied",
"context": {
"artifact_id": "2ead1400-a72d-494e-8834-756f4bfb",
"flow_id": "906eb7a4-5f15-4ca2-ae43-47749f73",
"flow_name": "aws-snyk-scan",
"trail_id": "47184b40-f29e-47cb-b959-a7bedee3",
"trail_name": "creator-1834733fcc22c849dd88f593c0de64acb107e13f9de907d7f320abfe968023f8"
}
},
{
"type": "rule_satisfied",
"context": {
"artifact_id": "5e5d863b-b372-43ae-923b-63c2d7b6",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "ae541688-5230-437a-a1ea-eb15aa3f",
"trail_name": "promotion-26"
}
}
]
},
{
"rule": {
"type": "trail-compliance",
"definition": {
"required": false,
"exceptions": []
}
},
"ignored": true,
"resolutions": [
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "11568bc3-1348-4a47-8704-d57608a6",
"flow_id": "e4e08b57-e36e-4724-acc8-04e7e437",
"flow_name": "creator-ci",
"trail_id": "7071d39a-4a75-4aa2-9c84-ae010a61",
"trail_name": "2a45a2bfa034ce2cd45019bfa8d2bd7cf1ba95d5",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "2ead1400-a72d-494e-8834-756f4bfb",
"flow_id": "906eb7a4-5f15-4ca2-ae43-47749f73",
"flow_name": "aws-snyk-scan",
"trail_id": "47184b40-f29e-47cb-b959-a7bedee3",
"trail_name": "creator-1834733fcc22c849dd88f593c0de64acb107e13f9de907d7f320abfe968023f8",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "5e5d863b-b372-43ae-923b-63c2d7b6",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "ae541688-5230-437a-a1ea-eb15aa3f",
"trail_name": "promotion-26",
"artifact_status": "COMPLIANT"
}
}
]
}
]
}
],
"reasons_for_incompliance": [],
"fingerprint": "1834733fcc22c849dd88f593c0de64acb107e13f9de907d7f320abfe968023f8",
"creationTimestamp": [
1745058876
],
"pods": null,
"annotation": {
"type": "unchanged",
"was": 1,
"now": 1
},
"flow_name": "creator-ci",
"git_commit": "2a45a2bfa034ce2cd45019bfa8d2bd7cf1ba95d5",
"commit_url": "https://gitlab.com/cyber-dojo/creator/-/commit/2a45a2bfa034ce2cd45019bfa8d2bd7cf1ba95d5",
"html_url": "https://app.kosli.com/cyber-dojo/flows/creator-ci/artifacts/1834733fcc22c849dd88f593c0de64acb107e13f9de907d7f320abfe968023f8?artifact_id=11568bc3-1348-4a47-8704-d57608a6",
"flow_html_url": "https://app.kosli.com/cyber-dojo/flows/creator-ci",
"deployment_diff": {
"diff_url": "https://gitlab.com/cyber-dojo/creator/-/compare/b0c9c4f68e341e40fa0b08be56fa1014236c9550...2a45a2bfa034ce2cd45019bfa8d2bd7cf1ba95d5",
"previous_git_commit": "b0c9c4f68e341e40fa0b08be56fa1014236c9550",
"previous_fingerprint": "c94d6bd2e54ac0fbde2c94d1b2862fea6a4637e6c26eecbe75aa2139c386e81f",
"previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/creator:b0c9c4f@sha256:c94d6bd2e54ac0fbde2c94d1b2862fea6a4637e6c26eecbe75aa2139c386e81f",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
"previous_git_commit_url": "https://gitlab.com/cyber-dojo/creator/-/commit/b0c9c4f68e341e40fa0b08be56fa1014236c9550",
"previous_trail_name": "b0c9c4f68e341e40fa0b08be56fa1014236c9550",
"previous_template_reference_name": "creator"
},
"commit_lead_time": 15490.0,
"flows": [
{
"flow_name": "creator-ci",
"trail_name": "2a45a2bfa034ce2cd45019bfa8d2bd7cf1ba95d5",
"template_reference_name": "creator",
"git_commit": "2a45a2bfa034ce2cd45019bfa8d2bd7cf1ba95d5",
"commit_url": "https://gitlab.com/cyber-dojo/creator/-/commit/2a45a2bfa034ce2cd45019bfa8d2bd7cf1ba95d5",
"git_commit_info": {
"sha1": "2a45a2bfa034ce2cd45019bfa8d2bd7cf1ba95d5",
"message": "Merge branch 'add-asset-builder' into 'main'\n\nBuild assets separately; upgrade sinatra-base image; remove all .snyk ignores\n\nSee merge request cyber-dojo/creator!174",
"author": "Jon Jagger <jrbjagger@googlemail.com>",
"branch": "main",
"timestamp": 1745043386.0,
"url": "https://gitlab.com/cyber-dojo/creator/-/commit/2a45a2bfa034ce2cd45019bfa8d2bd7cf1ba95d5"
},
"html_url": "https://app.kosli.com/cyber-dojo/flows/creator-ci/artifacts/1834733fcc22c849dd88f593c0de64acb107e13f9de907d7f320abfe968023f8?artifact_id=11568bc3-1348-4a47-8704-d57608a6",
"flow_html_url": "https://app.kosli.com/cyber-dojo/flows/creator-ci",
"deployment_diff": {
"diff_url": "https://gitlab.com/cyber-dojo/creator/-/compare/b0c9c4f68e341e40fa0b08be56fa1014236c9550...2a45a2bfa034ce2cd45019bfa8d2bd7cf1ba95d5",
"previous_git_commit": "b0c9c4f68e341e40fa0b08be56fa1014236c9550",
"previous_fingerprint": "c94d6bd2e54ac0fbde2c94d1b2862fea6a4637e6c26eecbe75aa2139c386e81f",
"previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/creator:b0c9c4f@sha256:c94d6bd2e54ac0fbde2c94d1b2862fea6a4637e6c26eecbe75aa2139c386e81f",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
"previous_git_commit_url": "https://gitlab.com/cyber-dojo/creator/-/commit/b0c9c4f68e341e40fa0b08be56fa1014236c9550",
"previous_trail_name": "b0c9c4f68e341e40fa0b08be56fa1014236c9550",
"previous_template_reference_name": "creator"
},
"commit_lead_time": 15490.0,
"artifact_compliance_in_flow": true,
"flow_reasons_for_non_compliance": []
},
{
"flow_name": "aws-snyk-scan",
"trail_name": "creator-1834733fcc22c849dd88f593c0de64acb107e13f9de907d7f320abfe968023f8",
"template_reference_name": "creator",
"git_commit": "76ac012d56fe3f606d1210b02d5d763a2aa89250",
"commit_url": "https://github.com/cyber-dojo/live-snyk-scans/commit/76ac012d56fe3f606d1210b02d5d763a2aa89250",
"git_commit_info": {
"sha1": "76ac012d56fe3f606d1210b02d5d763a2aa89250",
"message": "Run live snyk scan workflow",
"author": "JonJagger <jon@kosli.com>",
"branch": "main",
"timestamp": 1745055082.0,
"url": "https://github.com/cyber-dojo/live-snyk-scans/commit/76ac012d56fe3f606d1210b02d5d763a2aa89250"
},
"html_url": "https://app.kosli.com/cyber-dojo/flows/aws-snyk-scan/artifacts/1834733fcc22c849dd88f593c0de64acb107e13f9de907d7f320abfe968023f8?artifact_id=2ead1400-a72d-494e-8834-756f4bfb",
"flow_html_url": "https://app.kosli.com/cyber-dojo/flows/aws-snyk-scan",
"deployment_diff": null,
"commit_lead_time": 3794.0,
"artifact_compliance_in_flow": true,
"flow_reasons_for_non_compliance": []
},
{
"flow_name": "production-promotion",
"trail_name": "promotion-26",
"template_reference_name": "creator",
"git_commit": "5b2bcf60826ba250234cfb58a8c7261964fc4aa5",
"commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/5b2bcf60826ba250234cfb58a8c7261964fc4aa5",
"git_commit_info": {
"sha1": "5b2bcf60826ba250234cfb58a8c7261964fc4aa5",
"message": "Reinstate sdlc-control-gate",
"author": "JonJagger <jon@kosli.com>",
"branch": "main",
"timestamp": 1745058712.0,
"url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/5b2bcf60826ba250234cfb58a8c7261964fc4aa5"
},
"html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion/artifacts/1834733fcc22c849dd88f593c0de64acb107e13f9de907d7f320abfe968023f8?artifact_id=5e5d863b-b372-43ae-923b-63c2d7b6",
"flow_html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion",
"deployment_diff": {
"diff_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/compare/293f104576405ac804ec279d8d3e0d6680378c15...5b2bcf60826ba250234cfb58a8c7261964fc4aa5",
"previous_git_commit": "293f104576405ac804ec279d8d3e0d6680378c15",
"previous_fingerprint": "c94d6bd2e54ac0fbde2c94d1b2862fea6a4637e6c26eecbe75aa2139c386e81f",
"previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/creator:b0c9c4f@sha256:c94d6bd2e54ac0fbde2c94d1b2862fea6a4637e6c26eecbe75aa2139c386e81f",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
"previous_git_commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/293f104576405ac804ec279d8d3e0d6680378c15",
"previous_trail_name": "promotion-24",
"previous_template_reference_name": "creator"
},
"commit_lead_time": 164.0,
"artifact_compliance_in_flow": true,
"flow_reasons_for_non_compliance": []
}
]
},
{
"name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/differ:986b4fa@sha256:1c29e9b7240862ffa48a15d47c26b9a19fd7acb23868e22a7e01955390b69508",
"deployments": [],
"compliant": false,
"policy_decisions": [
{
"policy_id": "0b0c4d5a-cc1f-4725-8f97-af256289",
"policy_version": 1,
"status": "COMPLIANT",
"rule_evaluations": [
{
"rule": {
"type": "provenance",
"definition": {
"required": false,
"exceptions": []
}
},
"ignored": true,
"resolutions": [
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "40740311-ac04-4baa-b1ba-7fa33ded",
"flow_id": "d398561b-b0a9-4f0e-95a3-bbb0e347",
"flow_name": "differ-ci",
"trail_id": "7776586b-eab3-405a-92cc-45b480d4",
"trail_name": "986b4fa7bd298ab7d2d67587cc0f2bde23186be1"
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "a93fe40b-9fc1-490a-bf79-77c35411",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "3897f028-3d89-455c-812e-41fb07db",
"trail_name": "promotion-19"
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "8cbed754-accb-4c85-8007-642fc42d",
"flow_id": "906eb7a4-5f15-4ca2-ae43-47749f73",
"flow_name": "aws-snyk-scan",
"trail_id": "b399751b-fce8-46e7-928d-e43d6b3a",
"trail_name": "differ-1c29e9b7240862ffa48a15d47c26b9a19fd7acb23868e22a7e01955390b69508"
}
}
]
},
{
"rule": {
"type": "trail-compliance",
"definition": {
"required": false,
"exceptions": []
}
},
"ignored": true,
"resolutions": [
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "40740311-ac04-4baa-b1ba-7fa33ded",
"flow_id": "d398561b-b0a9-4f0e-95a3-bbb0e347",
"flow_name": "differ-ci",
"trail_id": "7776586b-eab3-405a-92cc-45b480d4",
"trail_name": "986b4fa7bd298ab7d2d67587cc0f2bde23186be1",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "a93fe40b-9fc1-490a-bf79-77c35411",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "3897f028-3d89-455c-812e-41fb07db",
"trail_name": "promotion-19",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "8cbed754-accb-4c85-8007-642fc42d",
"flow_id": "906eb7a4-5f15-4ca2-ae43-47749f73",
"flow_name": "aws-snyk-scan",
"trail_id": "b399751b-fce8-46e7-928d-e43d6b3a",
"trail_name": "differ-1c29e9b7240862ffa48a15d47c26b9a19fd7acb23868e22a7e01955390b69508",
"artifact_status": "NON-COMPLIANT"
}
}
]
},
{
"rule": {
"type": "attestation",
"definition": {
"if_condition": {
"text": "flow.tags.kind == \"microservice\""
},
"name": "*",
"type": "pull_request",
"must_be_compliant": true
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "40740311-ac04-4baa-b1ba-7fa33ded",
"flow_id": "d398561b-b0a9-4f0e-95a3-bbb0e347",
"flow_name": "differ-ci",
"trail_id": "7776586b-eab3-405a-92cc-45b480d4",
"trail_name": "986b4fa7bd298ab7d2d67587cc0f2bde23186be1",
"matching_attestation_id": "e4f03cc8-8e8d-4baf-8c85-7ea6310f",
"matching_attestation_name": "pull-request",
"matching_attestation_type": "pull_request",
"matching_attestation_compliance": true
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "a93fe40b-9fc1-490a-bf79-77c35411",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "3897f028-3d89-455c-812e-41fb07db",
"trail_name": "promotion-19"
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "8cbed754-accb-4c85-8007-642fc42d",
"flow_id": "906eb7a4-5f15-4ca2-ae43-47749f73",
"flow_name": "aws-snyk-scan",
"trail_id": "b399751b-fce8-46e7-928d-e43d6b3a",
"trail_name": "differ-1c29e9b7240862ffa48a15d47c26b9a19fd7acb23868e22a7e01955390b69508"
}
}
]
}
]
},
{
"policy_id": "5da6b9e4-a7ca-4e01-b956-f1230198",
"policy_version": 1,
"status": "NON-COMPLIANT",
"rule_evaluations": [
{
"rule": {
"type": "provenance",
"definition": {
"required": false,
"exceptions": []
}
},
"ignored": true,
"resolutions": [
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "40740311-ac04-4baa-b1ba-7fa33ded",
"flow_id": "d398561b-b0a9-4f0e-95a3-bbb0e347",
"flow_name": "differ-ci",
"trail_id": "7776586b-eab3-405a-92cc-45b480d4",
"trail_name": "986b4fa7bd298ab7d2d67587cc0f2bde23186be1"
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "a93fe40b-9fc1-490a-bf79-77c35411",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "3897f028-3d89-455c-812e-41fb07db",
"trail_name": "promotion-19"
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "8cbed754-accb-4c85-8007-642fc42d",
"flow_id": "906eb7a4-5f15-4ca2-ae43-47749f73",
"flow_name": "aws-snyk-scan",
"trail_id": "b399751b-fce8-46e7-928d-e43d6b3a",
"trail_name": "differ-1c29e9b7240862ffa48a15d47c26b9a19fd7acb23868e22a7e01955390b69508"
}
}
]
},
{
"rule": {
"type": "trail-compliance",
"definition": {
"required": true,
"exceptions": []
}
},
"satisfied": false,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "40740311-ac04-4baa-b1ba-7fa33ded",
"flow_id": "d398561b-b0a9-4f0e-95a3-bbb0e347",
"flow_name": "differ-ci",
"trail_id": "7776586b-eab3-405a-92cc-45b480d4",
"trail_name": "986b4fa7bd298ab7d2d67587cc0f2bde23186be1",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_satisfied",
"context": {
"artifact_id": "a93fe40b-9fc1-490a-bf79-77c35411",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "3897f028-3d89-455c-812e-41fb07db",
"trail_name": "promotion-19",
"artifact_status": "COMPLIANT"
}
},
{
"type": "non_compliant_in_trail",
"context": {
"artifact_id": "8cbed754-accb-4c85-8007-642fc42d",
"flow_id": "906eb7a4-5f15-4ca2-ae43-47749f73",
"flow_name": "aws-snyk-scan",
"trail_id": "b399751b-fce8-46e7-928d-e43d6b3a",
"trail_name": "differ-1c29e9b7240862ffa48a15d47c26b9a19fd7acb23868e22a7e01955390b69508",
"artifact_status": "NON-COMPLIANT"
}
}
]
}
]
},
{
"policy_id": "a1cb6673-a70d-475c-98c1-77d8a598",
"policy_version": 1,
"status": "NON-COMPLIANT",
"rule_evaluations": [
{
"rule": {
"type": "provenance",
"definition": {
"required": false,
"exceptions": []
}
},
"ignored": true,
"resolutions": [
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "40740311-ac04-4baa-b1ba-7fa33ded",
"flow_id": "d398561b-b0a9-4f0e-95a3-bbb0e347",
"flow_name": "differ-ci",
"trail_id": "7776586b-eab3-405a-92cc-45b480d4",
"trail_name": "986b4fa7bd298ab7d2d67587cc0f2bde23186be1"
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "a93fe40b-9fc1-490a-bf79-77c35411",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "3897f028-3d89-455c-812e-41fb07db",
"trail_name": "promotion-19"
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "8cbed754-accb-4c85-8007-642fc42d",
"flow_id": "906eb7a4-5f15-4ca2-ae43-47749f73",
"flow_name": "aws-snyk-scan",
"trail_id": "b399751b-fce8-46e7-928d-e43d6b3a",
"trail_name": "differ-1c29e9b7240862ffa48a15d47c26b9a19fd7acb23868e22a7e01955390b69508"
}
}
]
},
{
"rule": {
"type": "trail-compliance",
"definition": {
"required": false,
"exceptions": []
}
},
"ignored": true,
"resolutions": [
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "40740311-ac04-4baa-b1ba-7fa33ded",
"flow_id": "d398561b-b0a9-4f0e-95a3-bbb0e347",
"flow_name": "differ-ci",
"trail_id": "7776586b-eab3-405a-92cc-45b480d4",
"trail_name": "986b4fa7bd298ab7d2d67587cc0f2bde23186be1",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "a93fe40b-9fc1-490a-bf79-77c35411",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "3897f028-3d89-455c-812e-41fb07db",
"trail_name": "promotion-19",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "8cbed754-accb-4c85-8007-642fc42d",
"flow_id": "906eb7a4-5f15-4ca2-ae43-47749f73",
"flow_name": "aws-snyk-scan",
"trail_id": "b399751b-fce8-46e7-928d-e43d6b3a",
"trail_name": "differ-1c29e9b7240862ffa48a15d47c26b9a19fd7acb23868e22a7e01955390b69508",
"artifact_status": "NON-COMPLIANT"
}
}
]
},
{
"rule": {
"type": "attestation",
"definition": {
"if_condition": {
"text": "flow.tags.kind == \"microservice\" or flow.name == \"aws-snyk-scan\""
},
"name": "*",
"type": "snyk",
"must_be_compliant": true
}
},
"satisfied": false,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "40740311-ac04-4baa-b1ba-7fa33ded",
"flow_id": "d398561b-b0a9-4f0e-95a3-bbb0e347",
"flow_name": "differ-ci",
"trail_id": "7776586b-eab3-405a-92cc-45b480d4",
"trail_name": "986b4fa7bd298ab7d2d67587cc0f2bde23186be1",
"matching_attestation_id": "0c09de80-dcad-4ed9-836d-b8e7e357",
"matching_attestation_name": "snyk-container-scan",
"matching_attestation_type": "snyk",
"matching_attestation_compliance": true
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "a93fe40b-9fc1-490a-bf79-77c35411",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "3897f028-3d89-455c-812e-41fb07db",
"trail_name": "promotion-19"
}
},
{
"type": "non_compliant_attestation",
"context": {
"artifact_id": "8cbed754-accb-4c85-8007-642fc42d",
"flow_id": "906eb7a4-5f15-4ca2-ae43-47749f73",
"flow_name": "aws-snyk-scan",
"trail_id": "b399751b-fce8-46e7-928d-e43d6b3a",
"trail_name": "differ-1c29e9b7240862ffa48a15d47c26b9a19fd7acb23868e22a7e01955390b69508",
"matching_attestation_id": "aea3713a-af32-42c4-bd90-2f40aa54",
"matching_attestation_name": "snyk-container-scan",
"matching_attestation_type": "snyk",
"matching_attestation_compliance": false
}
}
]
}
]
},
{
"policy_id": "d50367a3-f3bb-47f1-af16-d03e9166",
"policy_version": 2,
"status": "COMPLIANT",
"rule_evaluations": [
{
"rule": {
"type": "provenance",
"definition": {
"required": true,
"exceptions": []
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "40740311-ac04-4baa-b1ba-7fa33ded",
"flow_id": "d398561b-b0a9-4f0e-95a3-bbb0e347",
"flow_name": "differ-ci",
"trail_id": "7776586b-eab3-405a-92cc-45b480d4",
"trail_name": "986b4fa7bd298ab7d2d67587cc0f2bde23186be1"
}
},
{
"type": "rule_satisfied",
"context": {
"artifact_id": "a93fe40b-9fc1-490a-bf79-77c35411",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "3897f028-3d89-455c-812e-41fb07db",
"trail_name": "promotion-19"
}
},
{
"type": "rule_satisfied",
"context": {
"artifact_id": "8cbed754-accb-4c85-8007-642fc42d",
"flow_id": "906eb7a4-5f15-4ca2-ae43-47749f73",
"flow_name": "aws-snyk-scan",
"trail_id": "b399751b-fce8-46e7-928d-e43d6b3a",
"trail_name": "differ-1c29e9b7240862ffa48a15d47c26b9a19fd7acb23868e22a7e01955390b69508"
}
}
]
},
{
"rule": {
"type": "trail-compliance",
"definition": {
"required": false,
"exceptions": []
}
},
"ignored": true,
"resolutions": [
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "40740311-ac04-4baa-b1ba-7fa33ded",
"flow_id": "d398561b-b0a9-4f0e-95a3-bbb0e347",
"flow_name": "differ-ci",
"trail_id": "7776586b-eab3-405a-92cc-45b480d4",
"trail_name": "986b4fa7bd298ab7d2d67587cc0f2bde23186be1",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "a93fe40b-9fc1-490a-bf79-77c35411",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "3897f028-3d89-455c-812e-41fb07db",
"trail_name": "promotion-19",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "8cbed754-accb-4c85-8007-642fc42d",
"flow_id": "906eb7a4-5f15-4ca2-ae43-47749f73",
"flow_name": "aws-snyk-scan",
"trail_id": "b399751b-fce8-46e7-928d-e43d6b3a",
"trail_name": "differ-1c29e9b7240862ffa48a15d47c26b9a19fd7acb23868e22a7e01955390b69508",
"artifact_status": "NON-COMPLIANT"
}
}
]
}
]
}
],
"reasons_for_incompliance": [],
"fingerprint": "1c29e9b7240862ffa48a15d47c26b9a19fd7acb23868e22a7e01955390b69508",
"creationTimestamp": [
1744013820
],
"pods": null,
"annotation": {
"type": "unchanged",
"was": 1,
"now": 1
},
"flow_name": "differ-ci",
"git_commit": "986b4fa7bd298ab7d2d67587cc0f2bde23186be1",
"commit_url": "https://github.com/cyber-dojo/differ/commit/986b4fa7bd298ab7d2d67587cc0f2bde23186be1",
"html_url": "https://app.kosli.com/cyber-dojo/flows/differ-ci/artifacts/1c29e9b7240862ffa48a15d47c26b9a19fd7acb23868e22a7e01955390b69508?artifact_id=40740311-ac04-4baa-b1ba-7fa33ded",
"flow_html_url": "https://app.kosli.com/cyber-dojo/flows/differ-ci",
"deployment_diff": {
"diff_url": "https://github.com/cyber-dojo/differ/compare/bf0b6bffcd5f470276f0ef69699aa4d0b4a80c1b...986b4fa7bd298ab7d2d67587cc0f2bde23186be1",
"previous_git_commit": "bf0b6bffcd5f470276f0ef69699aa4d0b4a80c1b",
"previous_fingerprint": "af0318343718d3776da09ff11d2aa7ce19674ebffcdb57807b2e05a69f368000",
"previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/differ:bf0b6bf@sha256:af0318343718d3776da09ff11d2aa7ce19674ebffcdb57807b2e05a69f368000",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
"previous_git_commit_url": "https://github.com/cyber-dojo/differ/commit/bf0b6bffcd5f470276f0ef69699aa4d0b4a80c1b",
"previous_trail_name": "bf0b6bffcd5f470276f0ef69699aa4d0b4a80c1b",
"previous_template_reference_name": "differ"
},
"commit_lead_time": 854.0,
"flows": [
{
"flow_name": "differ-ci",
"trail_name": "986b4fa7bd298ab7d2d67587cc0f2bde23186be1",
"template_reference_name": "differ",
"git_commit": "986b4fa7bd298ab7d2d67587cc0f2bde23186be1",
"commit_url": "https://github.com/cyber-dojo/differ/commit/986b4fa7bd298ab7d2d67587cc0f2bde23186be1",
"git_commit_info": {
"sha1": "986b4fa7bd298ab7d2d67587cc0f2bde23186be1",
"message": "Use vars context for variable in uses:with: in workflow (#306)\n\n* Use vars context for variable in uses:with: in workflow\n\n* Don't remove old images as it breaks the integration-test job",
"author": "Jon Jagger <jon@kosli.com>",
"branch": "",
"timestamp": 1744012966.0,
"url": "https://github.com/cyber-dojo/differ/commit/986b4fa7bd298ab7d2d67587cc0f2bde23186be1"
},
"html_url": "https://app.kosli.com/cyber-dojo/flows/differ-ci/artifacts/1c29e9b7240862ffa48a15d47c26b9a19fd7acb23868e22a7e01955390b69508?artifact_id=40740311-ac04-4baa-b1ba-7fa33ded",
"flow_html_url": "https://app.kosli.com/cyber-dojo/flows/differ-ci",
"deployment_diff": {
"diff_url": "https://github.com/cyber-dojo/differ/compare/bf0b6bffcd5f470276f0ef69699aa4d0b4a80c1b...986b4fa7bd298ab7d2d67587cc0f2bde23186be1",
"previous_git_commit": "bf0b6bffcd5f470276f0ef69699aa4d0b4a80c1b",
"previous_fingerprint": "af0318343718d3776da09ff11d2aa7ce19674ebffcdb57807b2e05a69f368000",
"previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/differ:bf0b6bf@sha256:af0318343718d3776da09ff11d2aa7ce19674ebffcdb57807b2e05a69f368000",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
"previous_git_commit_url": "https://github.com/cyber-dojo/differ/commit/bf0b6bffcd5f470276f0ef69699aa4d0b4a80c1b",
"previous_trail_name": "bf0b6bffcd5f470276f0ef69699aa4d0b4a80c1b",
"previous_template_reference_name": "differ"
},
"commit_lead_time": 854.0,
"artifact_compliance_in_flow": true,
"flow_reasons_for_non_compliance": []
},
{
"flow_name": "production-promotion",
"trail_name": "promotion-19",
"template_reference_name": "differ",
"git_commit": "6f2892b3629ea32a4e7883286515834108e0b8f0",
"commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/6f2892b3629ea32a4e7883286515834108e0b8f0",
"git_commit_info": {
"sha1": "6f2892b3629ea32a4e7883286515834108e0b8f0",
"message": "differ now also deploys to aws-prod using this repos release workflow",
"author": "JonJagger <jon@kosli.com>",
"branch": "main",
"timestamp": 1744013381.0,
"url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/6f2892b3629ea32a4e7883286515834108e0b8f0"
},
"html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion/artifacts/1c29e9b7240862ffa48a15d47c26b9a19fd7acb23868e22a7e01955390b69508?artifact_id=a93fe40b-9fc1-490a-bf79-77c35411",
"flow_html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion",
"deployment_diff": null,
"commit_lead_time": 439.0,
"artifact_compliance_in_flow": true,
"flow_reasons_for_non_compliance": []
},
{
"flow_name": "aws-snyk-scan",
"trail_name": "differ-1c29e9b7240862ffa48a15d47c26b9a19fd7acb23868e22a7e01955390b69508",
"template_reference_name": "differ",
"git_commit": "76ac012d56fe3f606d1210b02d5d763a2aa89250",
"commit_url": "https://github.com/cyber-dojo/live-snyk-scans/commit/76ac012d56fe3f606d1210b02d5d763a2aa89250",
"git_commit_info": {
"sha1": "76ac012d56fe3f606d1210b02d5d763a2aa89250",
"message": "Run live snyk scan workflow",
"author": "JonJagger <jon@kosli.com>",
"branch": "main",
"timestamp": 1745055082.0,
"url": "https://github.com/cyber-dojo/live-snyk-scans/commit/76ac012d56fe3f606d1210b02d5d763a2aa89250"
},
"html_url": "https://app.kosli.com/cyber-dojo/flows/aws-snyk-scan/artifacts/1c29e9b7240862ffa48a15d47c26b9a19fd7acb23868e22a7e01955390b69508?artifact_id=8cbed754-accb-4c85-8007-642fc42d",
"flow_html_url": "https://app.kosli.com/cyber-dojo/flows/aws-snyk-scan",
"deployment_diff": null,
"commit_lead_time": -1041262.0,
"artifact_compliance_in_flow": false,
"flow_reasons_for_non_compliance": [
{
"type": "failing_evidence",
"message": "Artifact has failed evidence for snyk-container-scan"
},
{
"type": "trail_not_compliant",
"message": "Artifact comes from a non-compliant trail: aws-snyk-scan/differ-1c29e9b7240862ffa48a15d47c26b9a19fd7acb23868e22a7e01955390b69508"
}
]
}
]
},
{
"name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/runner:b937205@sha256:8a3cdd88bc576ab09f77ba57dd0affacb85494dac77425cbac751b283ae1a24b",
"deployments": [],
"compliant": true,
"policy_decisions": [
{
"policy_id": "0b0c4d5a-cc1f-4725-8f97-af256289",
"policy_version": 1,
"status": "COMPLIANT",
"rule_evaluations": [
{
"rule": {
"type": "provenance",
"definition": {
"required": false,
"exceptions": []
}
},
"ignored": true,
"resolutions": [
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "f6fe6e42-0ecc-419b-a39b-d5996af6",
"flow_id": "a81e8c6d-bb00-474f-b986-a6cb9b08",
"flow_name": "runner-ci",
"trail_id": "4deac702-47fd-4d4f-919d-57e3f92a",
"trail_name": "b93720544ec7c29c64640755739337f02714c502"
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "0ba6b34a-17a9-4733-8447-d41f1685",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "ae541688-5230-437a-a1ea-eb15aa3f",
"trail_name": "promotion-26"
}
}
]
},
{
"rule": {
"type": "trail-compliance",
"definition": {
"required": false,
"exceptions": []
}
},
"ignored": true,
"resolutions": [
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "f6fe6e42-0ecc-419b-a39b-d5996af6",
"flow_id": "a81e8c6d-bb00-474f-b986-a6cb9b08",
"flow_name": "runner-ci",
"trail_id": "4deac702-47fd-4d4f-919d-57e3f92a",
"trail_name": "b93720544ec7c29c64640755739337f02714c502",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "0ba6b34a-17a9-4733-8447-d41f1685",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "ae541688-5230-437a-a1ea-eb15aa3f",
"trail_name": "promotion-26",
"artifact_status": "COMPLIANT"
}
}
]
},
{
"rule": {
"type": "attestation",
"definition": {
"if_condition": {
"text": "flow.tags.kind == \"microservice\""
},
"name": "*",
"type": "pull_request",
"must_be_compliant": true
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "f6fe6e42-0ecc-419b-a39b-d5996af6",
"flow_id": "a81e8c6d-bb00-474f-b986-a6cb9b08",
"flow_name": "runner-ci",
"trail_id": "4deac702-47fd-4d4f-919d-57e3f92a",
"trail_name": "b93720544ec7c29c64640755739337f02714c502",
"matching_attestation_id": "1d1ae1cd-734d-4411-88f9-352408b4",
"matching_attestation_name": "pull-request",
"matching_attestation_type": "pull_request",
"matching_attestation_compliance": true
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "0ba6b34a-17a9-4733-8447-d41f1685",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "ae541688-5230-437a-a1ea-eb15aa3f",
"trail_name": "promotion-26"
}
}
]
}
]
},
{
"policy_id": "5da6b9e4-a7ca-4e01-b956-f1230198",
"policy_version": 1,
"status": "COMPLIANT",
"rule_evaluations": [
{
"rule": {
"type": "provenance",
"definition": {
"required": false,
"exceptions": []
}
},
"ignored": true,
"resolutions": [
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "f6fe6e42-0ecc-419b-a39b-d5996af6",
"flow_id": "a81e8c6d-bb00-474f-b986-a6cb9b08",
"flow_name": "runner-ci",
"trail_id": "4deac702-47fd-4d4f-919d-57e3f92a",
"trail_name": "b93720544ec7c29c64640755739337f02714c502"
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "0ba6b34a-17a9-4733-8447-d41f1685",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "ae541688-5230-437a-a1ea-eb15aa3f",
"trail_name": "promotion-26"
}
}
]
},
{
"rule": {
"type": "trail-compliance",
"definition": {
"required": true,
"exceptions": []
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "f6fe6e42-0ecc-419b-a39b-d5996af6",
"flow_id": "a81e8c6d-bb00-474f-b986-a6cb9b08",
"flow_name": "runner-ci",
"trail_id": "4deac702-47fd-4d4f-919d-57e3f92a",
"trail_name": "b93720544ec7c29c64640755739337f02714c502",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_satisfied",
"context": {
"artifact_id": "0ba6b34a-17a9-4733-8447-d41f1685",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "ae541688-5230-437a-a1ea-eb15aa3f",
"trail_name": "promotion-26",
"artifact_status": "COMPLIANT"
}
}
]
}
]
},
{
"policy_id": "a1cb6673-a70d-475c-98c1-77d8a598",
"policy_version": 1,
"status": "COMPLIANT",
"rule_evaluations": [
{
"rule": {
"type": "provenance",
"definition": {
"required": false,
"exceptions": []
}
},
"ignored": true,
"resolutions": [
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "f6fe6e42-0ecc-419b-a39b-d5996af6",
"flow_id": "a81e8c6d-bb00-474f-b986-a6cb9b08",
"flow_name": "runner-ci",
"trail_id": "4deac702-47fd-4d4f-919d-57e3f92a",
"trail_name": "b93720544ec7c29c64640755739337f02714c502"
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "0ba6b34a-17a9-4733-8447-d41f1685",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "ae541688-5230-437a-a1ea-eb15aa3f",
"trail_name": "promotion-26"
}
}
]
},
{
"rule": {
"type": "trail-compliance",
"definition": {
"required": false,
"exceptions": []
}
},
"ignored": true,
"resolutions": [
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "f6fe6e42-0ecc-419b-a39b-d5996af6",
"flow_id": "a81e8c6d-bb00-474f-b986-a6cb9b08",
"flow_name": "runner-ci",
"trail_id": "4deac702-47fd-4d4f-919d-57e3f92a",
"trail_name": "b93720544ec7c29c64640755739337f02714c502",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "0ba6b34a-17a9-4733-8447-d41f1685",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "ae541688-5230-437a-a1ea-eb15aa3f",
"trail_name": "promotion-26",
"artifact_status": "COMPLIANT"
}
}
]
},
{
"rule": {
"type": "attestation",
"definition": {
"if_condition": {
"text": "flow.tags.kind == \"microservice\" or flow.name == \"aws-snyk-scan\""
},
"name": "*",
"type": "snyk",
"must_be_compliant": true
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "f6fe6e42-0ecc-419b-a39b-d5996af6",
"flow_id": "a81e8c6d-bb00-474f-b986-a6cb9b08",
"flow_name": "runner-ci",
"trail_id": "4deac702-47fd-4d4f-919d-57e3f92a",
"trail_name": "b93720544ec7c29c64640755739337f02714c502",
"matching_attestation_id": "3ad2d193-9b22-4042-b85c-b0e5618e",
"matching_attestation_name": "snyk-container-scan",
"matching_attestation_type": "snyk",
"matching_attestation_compliance": true
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "0ba6b34a-17a9-4733-8447-d41f1685",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "ae541688-5230-437a-a1ea-eb15aa3f",
"trail_name": "promotion-26"
}
}
]
}
]
},
{
"policy_id": "d50367a3-f3bb-47f1-af16-d03e9166",
"policy_version": 2,
"status": "COMPLIANT",
"rule_evaluations": [
{
"rule": {
"type": "provenance",
"definition": {
"required": true,
"exceptions": []
}
},
"satisfied": true,
"ignored": false,
"resolutions": [
{
"type": "rule_satisfied",
"context": {
"artifact_id": "f6fe6e42-0ecc-419b-a39b-d5996af6",
"flow_id": "a81e8c6d-bb00-474f-b986-a6cb9b08",
"flow_name": "runner-ci",
"trail_id": "4deac702-47fd-4d4f-919d-57e3f92a",
"trail_name": "b93720544ec7c29c64640755739337f02714c502"
}
},
{
"type": "rule_satisfied",
"context": {
"artifact_id": "0ba6b34a-17a9-4733-8447-d41f1685",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "ae541688-5230-437a-a1ea-eb15aa3f",
"trail_name": "promotion-26"
}
}
]
},
{
"rule": {
"type": "trail-compliance",
"definition": {
"required": false,
"exceptions": []
}
},
"ignored": true,
"resolutions": [
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "f6fe6e42-0ecc-419b-a39b-d5996af6",
"flow_id": "a81e8c6d-bb00-474f-b986-a6cb9b08",
"flow_name": "runner-ci",
"trail_id": "4deac702-47fd-4d4f-919d-57e3f92a",
"trail_name": "b93720544ec7c29c64640755739337f02714c502",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_not_applicable",
"context": {
"artifact_id": "0ba6b34a-17a9-4733-8447-d41f1685",
"flow_id": "d454e45e-3746-417f-992c-e41515d5",
"flow_name": "production-promotion",
"trail_id": "ae541688-5230-437a-a1ea-eb15aa3f",
"trail_name": "promotion-26",
"artifact_status": "COMPLIANT"
}
}
]
}
]
}
],
"reasons_for_incompliance": [],
"fingerprint": "8a3cdd88bc576ab09f77ba57dd0affacb85494dac77425cbac751b283ae1a24b",
"creationTimestamp": [
1745058886,
1745058889,
1745058891
],
"pods": null,
"annotation": {
"type": "exited",
"was": 3,
"now": 0
},
"flow_name": "runner-ci",
"git_commit": "b93720544ec7c29c64640755739337f02714c502",
"commit_url": "https://github.com/cyber-dojo/runner/commit/b93720544ec7c29c64640755739337f02714c502",
"html_url": "https://app.kosli.com/cyber-dojo/flows/runner-ci/artifacts/8a3cdd88bc576ab09f77ba57dd0affacb85494dac77425cbac751b283ae1a24b?artifact_id=f6fe6e42-0ecc-419b-a39b-d5996af6",
"flow_html_url": "https://app.kosli.com/cyber-dojo/flows/runner-ci",
"deployment_diff": {
"diff_url": "https://github.com/cyber-dojo/runner/compare/0faf0d33cd3a7797bd5d5e15a208f10b428fb88c...b93720544ec7c29c64640755739337f02714c502",
"previous_git_commit": "0faf0d33cd3a7797bd5d5e15a208f10b428fb88c",
"previous_fingerprint": "9e2ce48f5b3a5845ddd52f5fdb8ddac35357c2c4ab9c502f444389de9088b308",
"previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/runner:0faf0d3@sha256:9e2ce48f5b3a5845ddd52f5fdb8ddac35357c2c4ab9c502f444389de9088b308",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
"previous_git_commit_url": "https://github.com/cyber-dojo/runner/commit/0faf0d33cd3a7797bd5d5e15a208f10b428fb88c",
"previous_trail_name": "0faf0d33cd3a7797bd5d5e15a208f10b428fb88c",
"previous_template_reference_name": "runner"
},
"commit_lead_time": 1578.0,
"flows": [
{
"flow_name": "runner-ci",
"trail_name": "b93720544ec7c29c64640755739337f02714c502",
"template_reference_name": "runner",
"git_commit": "b93720544ec7c29c64640755739337f02714c502",
"commit_url": "https://github.com/cyber-dojo/runner/commit/b93720544ec7c29c64640755739337f02714c502",
"git_commit_info": {
"sha1": "b93720544ec7c29c64640755739337f02714c502",
"message": "Merge pull request #120 from cyber-dojo/update-base-image-111\n\nUpdate base image to fix new snyk vuln",
"author": "Jon Jagger <jon@kosli.com>",
"branch": "",
"timestamp": 1745057308.0,
"url": "https://github.com/cyber-dojo/runner/commit/b93720544ec7c29c64640755739337f02714c502"
},
"html_url": "https://app.kosli.com/cyber-dojo/flows/runner-ci/artifacts/8a3cdd88bc576ab09f77ba57dd0affacb85494dac77425cbac751b283ae1a24b?artifact_id=f6fe6e42-0ecc-419b-a39b-d5996af6",
"flow_html_url": "https://app.kosli.com/cyber-dojo/flows/runner-ci",
"deployment_diff": {
"diff_url": "https://github.com/cyber-dojo/runner/compare/0faf0d33cd3a7797bd5d5e15a208f10b428fb88c...b93720544ec7c29c64640755739337f02714c502",
"previous_git_commit": "0faf0d33cd3a7797bd5d5e15a208f10b428fb88c",
"previous_fingerprint": "9e2ce48f5b3a5845ddd52f5fdb8ddac35357c2c4ab9c502f444389de9088b308",
"previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/runner:0faf0d3@sha256:9e2ce48f5b3a5845ddd52f5fdb8ddac35357c2c4ab9c502f444389de9088b308",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
"previous_git_commit_url": "https://github.com/cyber-dojo/runner/commit/0faf0d33cd3a7797bd5d5e15a208f10b428fb88c",
"previous_trail_name": "0faf0d33cd3a7797bd5d5e15a208f10b428fb88c",
"previous_template_reference_name": "runner"
},
"commit_lead_time": 1578.0,
"artifact_compliance_in_flow": true,
"flow_reasons_for_non_compliance": []
},
{
"flow_name": "production-promotion",
"trail_name": "promotion-26",
"template_reference_name": "runner",
"git_commit": "5b2bcf60826ba250234cfb58a8c7261964fc4aa5",
"commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/5b2bcf60826ba250234cfb58a8c7261964fc4aa5",
"git_commit_info": {
"sha1": "5b2bcf60826ba250234cfb58a8c7261964fc4aa5",
"message": "Reinstate sdlc-control-gate",
"author": "JonJagger <jon@kosli.com>",
"branch": "main",
"timestamp": 1745058712.0,
"url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/5b2bcf60826ba250234cfb58a8c7261964fc4aa5"
},
"html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion/artifacts/8a3cdd88bc576ab09f77ba57dd0affacb85494dac77425cbac751b283ae1a24b?artifact_id=0ba6b34a-17a9-4733-8447-d41f1685",
"flow_html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion",
"deployment_diff": {
"diff_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/compare/194a5764d7b94fae08a541e436ce6d8495edf434...5b2bcf60826ba250234cfb58a8c7261964fc4aa5",
"previous_git_commit": "194a5764d7b94fae08a541e436ce6d8495edf434",
"previous_fingerprint": "9e2ce48f5b3a5845ddd52f5fdb8ddac35357c2c4ab9c502f444389de9088b308",
"previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/runner:0faf0d3@sha256:9e2ce48f5b3a5845ddd52f5fdb8ddac35357c2c4ab9c502f444389de9088b308",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
"previous_git_commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/194a5764d7b94fae08a541e436ce6d8495edf434",
"previous_trail_name": "promotion-22",
"previous_template_reference_name": "runner"
},
"commit_lead_time": 174.0,
"artifact_compliance_in_flow": true,
"flow_reasons_for_non_compliance": []
}
]
}
],
"applied_policies": [
{
"id": "0b0c4d5a-cc1f-4725-8f97-af256289",
"name": "pull-request",
"version": 1,
"policy_dump": {
"schema_version": "1",
"artifacts": {
"provenance": {
"required": false,
"exceptions": []
},
"trail_compliance": {
"required": false,
"exceptions": []
},
"attestations": [
{
"if_condition": {
"text": "flow.tags.kind == \"microservice\""
},
"name": "*",
"type": "pull_request",
"must_be_compliant": true
}
]
}
},
"failing_artifacts": []
},
{
"id": "5da6b9e4-a7ca-4e01-b956-f1230198",
"name": "trail-compliance",
"version": 1,
"policy_dump": {
"schema_version": "1",
"artifacts": {
"provenance": {
"required": false,
"exceptions": []
},
"trail_compliance": {
"required": true,
"exceptions": []
},
"attestations": []
}
},
"failing_artifacts": [
"244531986313.dkr.ecr.eu-central-1.amazonaws.com/differ:986b4fa@sha256:1c29e9b7240862ffa48a15d47c26b9a19fd7acb23868e22a7e01955390b69508"
]
},
{
"id": "a1cb6673-a70d-475c-98c1-77d8a598",
"name": "security-scan",
"version": 1,
"policy_dump": {
"schema_version": "1",
"artifacts": {
"provenance": {
"required": false,
"exceptions": []
},
"trail_compliance": {
"required": false,
"exceptions": []
},
"attestations": [
{
"if_condition": {
"text": "flow.tags.kind == \"microservice\" or flow.name == \"aws-snyk-scan\""
},
"name": "*",
"type": "snyk",
"must_be_compliant": true
}
]
}
},
"failing_artifacts": [
"244531986313.dkr.ecr.eu-central-1.amazonaws.com/differ:986b4fa@sha256:1c29e9b7240862ffa48a15d47c26b9a19fd7acb23868e22a7e01955390b69508"
]
},
{
"id": "d50367a3-f3bb-47f1-af16-d03e9166",
"name": "artifact-provenance",
"version": 2,
"policy_dump": {
"schema_version": "1",
"artifacts": {
"provenance": {
"required": true,
"exceptions": []
},
"trail_compliance": {
"required": false,
"exceptions": []
},
"attestations": []
}
},
"failing_artifacts": []
}
]
}