Informe JSON sin procesar legible por máquina
{
"data": {
"repo": {
"topics": [],
"is_fork": false,
"size_kb": 67505,
"has_wiki": true,
"homepage": null,
"languages": {
"Go": 402259,
"Shell": 859,
"Makefile": 15637,
"Dockerfile": 1255,
"Go Template": 3806
},
"pushed_at": "2026-07-25T20:30:23Z",
"created_at": "2023-01-24T10:39:07Z",
"owner_type": "Organization",
"updated_at": "2026-07-25T20:30:29Z",
"description": "Project for implementing Container as a Service on Kubernetes clusters",
"is_archived": false,
"is_disabled": false,
"license_spdx": "Apache-2.0",
"default_branch": "main",
"license_spdx_raw": "Apache-2.0",
"primary_language": "Go",
"significant_languages": [
"Go"
]
},
"owner": {
"blog": null,
"name": null,
"type": "Organization",
"login": "dana-team",
"company": null,
"location": null,
"followers": 6,
"avatar_url": "https://avatars.githubusercontent.com/u/75026188?v=4",
"created_at": "2020-11-25T13:29:04Z",
"is_verified": null,
"public_repos": 38,
"account_age_days": 2068
},
"license": {
"state": "standard",
"spdx_id": "Apache-2.0",
"raw_spdx": "Apache-2.0",
"file_present": true,
"scorecard_found": true,
"profile_has_license": true
},
"activity": {
"releases": [
{
"tag": "v0.9.2",
"kind": "patch",
"published_at": "2026-07-19T06:41:13Z"
},
{
"tag": "v0.9.1",
"kind": "patch",
"published_at": "2026-06-14T06:30:11Z"
},
{
"tag": "v0.9.0",
"kind": "minor",
"published_at": "2026-06-10T10:27:12Z"
},
{
"tag": "v0.8.2",
"kind": "patch",
"published_at": "2026-05-17T07:41:55Z"
},
{
"tag": "v0.8.1",
"kind": "patch",
"published_at": "2026-05-11T12:30:49Z"
},
{
"tag": "v0.8.0",
"kind": "minor",
"published_at": "2026-05-10T12:40:39Z"
},
{
"tag": "v0.7.2",
"kind": "patch",
"published_at": "2026-05-06T10:26:51Z"
},
{
"tag": "v0.7.1",
"kind": "patch",
"published_at": "2026-05-05T11:44:20Z"
},
{
"tag": "v0.7.0",
"kind": "minor",
"published_at": "2026-05-04T08:51:10Z"
},
{
"tag": "v0.6.1",
"kind": "patch",
"published_at": "2026-04-28T07:57:21Z"
},
{
"tag": "v0.6.0",
"kind": "minor",
"published_at": "2026-04-26T10:51:51Z"
},
{
"tag": "v0.5.7",
"kind": "patch",
"published_at": "2026-04-04T14:10:21Z"
},
{
"tag": "v0.5.6",
"kind": "patch",
"published_at": "2026-02-18T08:49:19Z"
},
{
"tag": "v0.5.5",
"kind": "patch",
"published_at": "2026-02-01T10:15:52Z"
},
{
"tag": "v0.5.4",
"kind": "patch",
"published_at": "2026-01-12T09:02:55Z"
},
{
"tag": "v0.5.3",
"kind": "patch",
"published_at": "2025-12-28T14:34:01Z"
},
{
"tag": "v0.5.2",
"kind": "patch",
"published_at": "2025-12-21T09:04:15Z"
},
{
"tag": "v0.5.1",
"kind": "patch",
"published_at": "2025-12-14T13:14:41Z"
},
{
"tag": "v0.5.0",
"kind": "minor",
"published_at": "2025-12-03T09:04:04Z"
},
{
"tag": "v0.4.1",
"kind": "patch",
"published_at": "2025-10-22T14:13:04Z"
},
{
"tag": "v0.4.0",
"kind": "minor",
"published_at": "2025-10-16T07:16:26Z"
},
{
"tag": "v0.3.6",
"kind": "patch",
"published_at": "2024-12-04T11:03:27Z"
},
{
"tag": "v0.3.5",
"kind": "patch",
"published_at": "2024-10-15T09:18:19Z"
},
{
"tag": "v0.3.4",
"kind": "patch",
"published_at": "2024-10-09T14:41:33Z"
},
{
"tag": "v0.3.3",
"kind": "patch",
"published_at": "2024-10-06T18:46:48Z"
},
{
"tag": "v0.3.2",
"kind": "patch",
"published_at": "2024-09-30T19:31:42Z"
},
{
"tag": "v0.3.1",
"kind": "patch",
"published_at": "2024-09-02T13:47:44Z"
},
{
"tag": "v0.3.0",
"kind": "minor",
"published_at": "2024-08-22T14:12:10Z"
},
{
"tag": "v0.2.0",
"kind": "minor",
"published_at": "2024-05-08T18:47:44Z"
},
{
"tag": "v0.1.8",
"kind": "patch",
"published_at": "2024-04-02T12:07:17Z"
},
{
"tag": "v0.1.7",
"kind": "patch",
"published_at": "2024-03-19T14:59:47Z"
},
{
"tag": "v0.1.6",
"kind": "patch",
"published_at": "2024-03-12T18:03:25Z"
},
{
"tag": "v0.1.5",
"kind": "patch",
"published_at": "2024-03-05T12:43:23Z"
},
{
"tag": "v0.1.4",
"kind": "patch",
"published_at": "2024-02-21T11:27:16Z"
},
{
"tag": "v0.1.3",
"kind": "patch",
"published_at": "2023-08-15T08:27:58Z"
},
{
"tag": "v0.1.2",
"kind": "patch",
"published_at": "2023-07-30T19:52:31Z"
},
{
"tag": "v0.1.1",
"kind": "patch",
"published_at": "2023-07-02T16:04:19Z"
},
{
"tag": "v0.1.0",
"kind": "minor",
"published_at": "2023-06-29T16:23:01Z"
}
],
"recent_commits": [
{
"oid": "7b47269ead074e3e81f5a3c3721b88cfb23e20c8",
"body": "test(controllers): cover watch predicates and request mappers",
"is_bot": true,
"headline": "Merge pull request #668 from dana-team/test/controller-watch-predicates",
"author_name": "dana-prow-ci[bot]",
"author_login": "dana-prow-ci[bot]",
"committed_at": "2026-07-25T20:30:22Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "c4e66e3ac9200bd86aaf816da3054a3f20f6287a",
"body": "…-code\n\nrefactor(autoscale): remove dead annotation-merge path",
"is_bot": true,
"headline": "Merge pull request #667 from dana-team/refactor/remove-dead-autoscale…",
"author_name": "dana-prow-ci[bot]",
"author_login": "dana-prow-ci[bot]",
"committed_at": "2026-07-25T20:29:24Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "54173e68b4a6075a2eba5371bdaa1e797740ce6c",
"body": "test(capp): cover handleResourceDeletion branches",
"is_bot": true,
"headline": "Merge pull request #666 from dana-team/test/finalizer-handler-coverage",
"author_name": "dana-prow-ci[bot]",
"author_login": "dana-prow-ci[bot]",
"committed_at": "2026-07-25T20:28:23Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "c15a12791e4ddf926c3f29473d8ee26dbac4e132",
"body": "Adds unit tests for CNAME record condition diffing, CNAME/knative\nservice watch predicates, and label-based reconcile request mapping.\nRenames existing predicate tests to drop misleading \"Integration\"\nsuffix.\n\nSigned-off-by: Shahaf Bahar <sbahar@redhat.com>",
"is_bot": false,
"headline": "test(controllers): cover watch predicates and request mappers",
"author_name": "Shahaf Bahar",
"author_login": "sbahar619",
"committed_at": "2026-07-23T07:26:40Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "591f384d62fd6a3b80e013fa09f88cf01b6be9ff",
"body": "The validating webhook rejects any user-supplied autoscaling\nannotations at admission, so the FilterMap/MergeMaps path in\nSetAutoScaler was unreachable. Remove it along with the\nnow-unnecessary delete() guards and the orphaned FilterMap\nutility.\n\nSigned-off-by: Shahaf Bahar <sbahar@redhat.com>",
"is_bot": false,
"headline": "refactor(autoscale): remove dead annotation-merge path",
"author_name": "Shahaf Bahar",
"author_login": "sbahar619",
"committed_at": "2026-07-19T10:34:17Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "0b6c7b76202d75a657e2ed21edff4e4de89d444d",
"body": "Adds unit tests for all deletion paths: non-deleting capp,\nsuccessful cleanup, cleanup failure, and missing finalizer.\n\nRef: #662\n\nSigned-off-by: Shahaf Bahar <sbahar@redhat.com>",
"is_bot": false,
"headline": "test(capp): cover handleResourceDeletion branches",
"author_name": "Shahaf Bahar",
"author_login": "sbahar619",
"committed_at": "2026-07-19T09:30:56Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "3da47ac912dec8261afee33123c7fb679f435400",
"body": "feat(webhook): reject autoscaling annotations in Capp templates",
"is_bot": true,
"headline": "Merge pull request #665 from sbahar619/feat/block-autoscale-annotations",
"author_name": "dana-prow-ci[bot]",
"author_login": "dana-prow-ci[bot]",
"committed_at": "2026-07-19T06:34:56Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "34546882e14845a1a8ec786c2eb7547fb3ca500c",
"body": "…ete-checks\n\ntest(e2e): remove redundant post-delete existence checks",
"is_bot": true,
"headline": "Merge pull request #664 from dana-team/test/remove-redundant-post-del…",
"author_name": "dana-prow-ci[bot]",
"author_login": "dana-prow-ci[bot]",
"committed_at": "2026-07-19T06:33:55Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "c4257b50968ed726cfe78394226a0a3848f10256",
"body": "…vements\n\nfix(controllers): clean up CappReconciler readability and correctness",
"is_bot": true,
"headline": "Merge pull request #659 from dana-team/fix/controller-reconcile-impro…",
"author_name": "dana-prow-ci[bot]",
"author_login": "dana-prow-ci[bot]",
"committed_at": "2026-07-19T06:32:55Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "14cf585f4568b8bd90f6ccaba7c635dbe180318c",
"body": "Prevents users from bypassing operator-managed autoscaling by\nsetting autoscaling.knative.dev/* annotations directly. The E2E\ntest asserting override behavior is removed since that path is\nnow rejected.\n\nSigned-off-by: Shahaf Bahar <sbahar@redhat.com>",
"is_bot": false,
"headline": "feat(webhook): reject autoscaling annotations in Capp templates",
"author_name": "Shahaf Bahar",
"author_login": "sbahar619",
"committed_at": "2026-07-16T13:08:52Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "9e043747de9d8aed89877eaa46364d801cd5670e",
"body": "DeleteCapp already waits for removal; the extra Eventually polls\nadded no new signal and slowed tests.\n\nSigned-off-by: Shahaf Bahar <sbahar@redhat.com>",
"is_bot": false,
"headline": "test(e2e): remove redundant post-delete existence checks",
"author_name": "Shahaf Bahar",
"author_login": "sbahar619",
"committed_at": "2026-07-16T09:08:37Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "b7a5ba851168d0c5b33273d83c074341ff9425fa",
"body": "feat(autoscale): enable max replicas in autoscale",
"is_bot": true,
"headline": "Merge pull request #649 from Afik17/feat/scaleSpec-max-replicas",
"author_name": "dana-prow-ci[bot]",
"author_login": "dana-prow-ci[bot]",
"committed_at": "2026-07-16T06:56:35Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "aeedc66bd8e8ec498d822a4aab9a89487bd1b081",
"body": "- Wrap reconciler errors with %w to preserve the error chain\n- Remove unused Log field from CappReconciler struct\n- Correct stale comment on the event-to-Capp mapper function\n- Collapse redundant if/return in SyncApplication\n\nSigned-off-by: Shahaf Bahar <sbahar@redhat.com>",
"is_bot": false,
"headline": "fix(controllers): clean up CappReconciler readability and correctness",
"author_name": "Shahaf Bahar",
"author_login": "sbahar619",
"committed_at": "2026-07-16T06:53:20Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "fd8be432c01b22c5914cf728853b65fa5ef48aeb",
"body": "…om/onsi/gomega-1.42.1\n\nchore(deps): bump github.com/onsi/gomega from 1.41.0 to 1.42.1",
"is_bot": true,
"headline": "Merge pull request #640 from dana-team/dependabot/go_modules/github.c…",
"author_name": "dana-prow-ci[bot]",
"author_login": "dana-prow-ci[bot]",
"committed_at": "2026-07-16T06:49:33Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "745b2cd14eacff74746af1b135069cd46c9dd499",
"body": "…e/setup-helm-5.0.1\n\nchore(deps): bump azure/setup-helm from 5.0.0 to 5.0.1",
"is_bot": true,
"headline": "Merge pull request #639 from dana-team/dependabot/github_actions/azur…",
"author_name": "dana-prow-ci[bot]",
"author_login": "dana-prow-ci[bot]",
"committed_at": "2026-07-16T06:44:35Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "eabd19fe71602a3222be180b03478cfef338df99",
"body": "…ons/cache-6\n\nchore(deps): bump actions/cache from 5 to 6",
"is_bot": true,
"headline": "Merge pull request #637 from dana-team/dependabot/github_actions/acti…",
"author_name": "dana-prow-ci[bot]",
"author_login": "dana-prow-ci[bot]",
"committed_at": "2026-07-16T06:43:34Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "9fc1cdddb7557050957465dc55f1c11ef1323abc",
"body": "chore: update chart doc",
"is_bot": false,
"headline": "feat(autoscale): enable max replicas in autoscale",
"author_name": "afik17",
"author_login": null,
"committed_at": "2026-07-14T16:54:45Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "d4fb0f38dc338431656beb2bc52b68885b5f04d1",
"body": "…rollers\n\nrefactor(controllers): inline finalizer logic into controllers package",
"is_bot": true,
"headline": "Merge pull request #658 from dana-team/refactor/finalizer-inline-cont…",
"author_name": "dana-prow-ci[bot]",
"author_login": "dana-prow-ci[bot]",
"committed_at": "2026-07-14T13:31:32Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "4c264483d075ff43d44dfe013a960207f6cf1ea6",
"body": "…1fb1014d9\n\nchore(deps): bump the k8s-io group across 1 directory with 3 updates",
"is_bot": true,
"headline": "Merge pull request #638 from dana-team/dependabot/go_modules/k8s-io-e…",
"author_name": "dana-prow-ci[bot]",
"author_login": "dana-prow-ci[bot]",
"committed_at": "2026-07-14T13:30:33Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "8a93e3b083f5e89a63e9d92e1515b72832060ec5",
"body": "…eanup\n\nfix(api): apply URI relative-path CEL validation in CRDs",
"is_bot": true,
"headline": "Merge pull request #660 from dana-team/refactor/webhook-rcs-common-cl…",
"author_name": "dana-prow-ci[bot]",
"author_login": "dana-prow-ci[bot]",
"committed_at": "2026-07-14T13:29:33Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "3fd0f983f53d82f9c2794cf1309d1669b26fdbbe",
"body": "test(e2e): propagate API errors from resource existence checks",
"is_bot": true,
"headline": "Merge pull request #663 from dana-team/test/fix-e2e-utils-assertions",
"author_name": "dana-prow-ci[bot]",
"author_login": "dana-prow-ci[bot]",
"committed_at": "2026-07-14T13:28:33Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "1697fea4df0b0c5026808dd04696cb05e15cb822",
"body": "DoesResourceExist called Fail directly on non-NotFound errors, which\nbreaks async Gomega assertions that need to retry on transient failures.\nReplace it with ResourceExists returning (bool, error) so Eventually\nand Consistently can surface and retry errors correctly.\n\nUse gomega.Default in It-body helper calls; keep scoped g Gomega inside\nEventually/Consistently callbacks. Add GinkgoHelper() so failure traces\npoint to the call site.\n\nSigned-off-by: Shahaf Bahar <sbahar@redhat.com>",
"is_bot": false,
"headline": "test(e2e): propagate API errors from resource existence checks",
"author_name": "Shahaf Bahar",
"author_login": "sbahar619",
"committed_at": "2026-07-13T12:35:09Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "d355c30d00d8173218a9cb2fbe87ef23409207c0",
"body": "Wrong kubebuilder marker silently dropped the rule from generated CRDs.\n\nSigned-off-by: Shahaf Bahar <sbahar@redhat.com>",
"is_bot": false,
"headline": "fix(api): apply URI relative-path CEL validation in CRDs",
"author_name": "Shahaf Bahar",
"author_login": "sbahar619",
"committed_at": "2026-07-12T07:47:54Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "ae49fa754f1cca7dc31b5ad10a5f3160ee8e8144",
"body": "The finalizer package was a standalone package exposing public functions\nand a public constant. Moving the logic into the controllers package makes\nit private, eliminates the cross-package dependency, and aligns with how\nother controller-local helpers are structured.\n\nAlso fixes the return order of (error, bool) → (bool, error) on\nhandleResourceDeletion to match Go convention, and restructures the\ntests into sub-tests.\n\nSigned-off-by: Shahaf Bahar <sbahar@redhat.com>",
"is_bot": false,
"headline": "refactor(controllers): inline finalizer logic into controllers package",
"author_name": "Shahaf Bahar",
"author_login": "sbahar619",
"committed_at": "2026-07-09T08:11:42Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "afbd1b5277d6ca36c3715c1f900eeae5456fe401",
"body": "Bumps [github.com/onsi/gomega](https://github.com/onsi/gomega) from 1.41.0 to 1.42.1.\n- [Release notes](https://github.com/onsi/gomega/releases)\n- [Changelog](https://github.com/onsi/gomega/blob/master/CHANGELOG.md)\n- [Commits](https://github.com/onsi/gomega/compare/v1.41.0...v1.42.1)\n\n---\nupdated-d\n[…]\ndency-name: github.com/onsi/gomega\n dependency-version: 1.42.1\n dependency-type: direct:production\n update-type: version-update:semver-minor\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>",
"is_bot": true,
"headline": "chore(deps): bump github.com/onsi/gomega from 1.41.0 to 1.42.1",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-07-06T03:49:52Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "26a013620f7bdacbaca2c16625b1cbce31f5f4c5",
"body": "Bumps [azure/setup-helm](https://github.com/azure/setup-helm) from 5.0.0 to 5.0.1.\n- [Release notes](https://github.com/azure/setup-helm/releases)\n- [Changelog](https://github.com/Azure/setup-helm/blob/main/CHANGELOG.md)\n- [Commits](https://github.com/azure/setup-helm/compare/dda3372f752e03dde6b3237\n[…]\n- dependency-name: azure/setup-helm\n dependency-version: 5.0.1\n dependency-type: direct:production\n update-type: version-update:semver-patch\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>",
"is_bot": true,
"headline": "chore(deps): bump azure/setup-helm from 5.0.0 to 5.0.1",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-07-06T03:47:36Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "3d2078d8b12f0eb01172f26a2517769ebca49478",
"body": "…om/cert-manager/cert-manager-1.20.3\n\nchore(deps): bump github.com/cert-manager/cert-manager from 1.20.2 to 1.20.3",
"is_bot": true,
"headline": "Merge pull request #642 from dana-team/dependabot/go_modules/github.c…",
"author_name": "dana-prow-ci[bot]",
"author_login": "dana-prow-ci[bot]",
"committed_at": "2026-07-06T03:47:25Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "ae9000f7b409b14022b1cb71627e37757c7f8761",
"body": "Bumps [actions/cache](https://github.com/actions/cache) from 5 to 6.\n- [Release notes](https://github.com/actions/cache/releases)\n- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)\n- [Commits](https://github.com/actions/cache/compare/v5...v6)\n\n---\nupdated-dependencies:\n- dependency-name: actions/cache\n dependency-version: '6'\n dependency-type: direct:production\n update-type: version-update:semver-major\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>",
"is_bot": true,
"headline": "chore(deps): bump actions/cache from 5 to 6",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-07-06T03:47:10Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "073a3c6830074fdf8b67456c6d9a82fe9222576f",
"body": "Bumps the k8s-io group with 2 updates in the / directory: [k8s.io/api](https://github.com/kubernetes/api) and [k8s.io/client-go](https://github.com/kubernetes/client-go).\n\n\nUpdates `k8s.io/api` from 0.36.1 to 0.36.2\n- [Commits](https://github.com/kubernetes/api/compare/v0.36.1...v0.36.2)\n\nUpdates `k\n[…]\nient-go\n dependency-version: 0.36.2\n dependency-type: direct:production\n update-type: version-update:semver-patch\n dependency-group: k8s-io\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>",
"is_bot": true,
"headline": "chore(deps): bump the k8s-io group across 1 directory with 3 updates",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-07-06T03:47:02Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "71eaeee71634ee28b68a26f7e0077418f0280050",
"body": "…ons/checkout-7.0.0\n\nchore(deps): bump actions/checkout from 6.0.3 to 7.0.0",
"is_bot": true,
"headline": "Merge pull request #641 from dana-team/dependabot/github_actions/acti…",
"author_name": "dana-prow-ci[bot]",
"author_login": "dana-prow-ci[bot]",
"committed_at": "2026-07-06T03:45:26Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "7390589e1cee8ecc1dc0bc69f9c3e8fed4954c4e",
"body": "…dev/serving-0.49.1\n\nchore(deps): bump knative.dev/serving from 0.49.0 to 0.49.1",
"is_bot": true,
"headline": "Merge pull request #643 from dana-team/dependabot/go_modules/knative.…",
"author_name": "dana-prow-ci[bot]",
"author_login": "dana-prow-ci[bot]",
"committed_at": "2026-07-06T03:44:26Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "963accd47172c789490f0f8c1cf3c6b6e579ff1b",
"body": "…anagers\n\ntest(resourcemanagers): lock in owner-ref skip contract for event source CleanUp",
"is_bot": true,
"headline": "Merge pull request #656 from dana-team/003/ib08-standardize-resourcem…",
"author_name": "dana-prow-ci[bot]",
"author_login": "dana-prow-ci[bot]",
"committed_at": "2026-07-06T03:04:25Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "c4da95e8f27ac7dbd63c8cc81e7c5ac560082616",
"body": "…anagers\n\nrefactor(resourcemanagers): deduplicate Elastic HTTP output wiring",
"is_bot": true,
"headline": "Merge pull request #655 from dana-team/003/ib07-standardize-resourcem…",
"author_name": "dana-prow-ci[bot]",
"author_login": "dana-prow-ci[bot]",
"committed_at": "2026-07-06T02:52:25Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "4f0ee3eaf600a212e30e73b07766ac74c6577445",
"body": "…rce CleanUp\n\nKafkaSource and PingSource previously had no tests verifying that owned\nresources survive Capp deletion. These tests guard against the cleanup\nlogic being regressed to an unconditional delete loop.\n\nSigned-off-by: Shahaf Bahar <sbahar@redhat.com>",
"is_bot": false,
"headline": "test(resourcemanagers): lock in owner-ref skip contract for event sou…",
"author_name": "Shahaf Bahar",
"author_login": "sbahar619",
"committed_at": "2026-07-05T08:36:20Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "e6f4a5370a1a0c5042873b297427cef2155c4bc7",
"body": "Both Elasticsearch output creators duplicated the same HTTPOutput\nstruct, including TLS config and secret reference. Extract a shared\nconstructor so the wiring lives in one place.\n\nSigned-off-by: Shahaf Bahar <sbahar@redhat.com>",
"is_bot": false,
"headline": "refactor(resourcemanagers): deduplicate Elastic HTTP output wiring",
"author_name": "Shahaf Bahar",
"author_login": "sbahar619",
"committed_at": "2026-07-05T08:26:07Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "cd041ba873fbc0103fd9aea57799833c4b3315ab",
"body": "Extract prepareResource from PingSourceManager.createOrUpdate to match\nthe pattern already used by KafkaSource. Also use DeepCopy when\nassigning the desired spec to the existing object, preventing aliasing\nbugs. Rename the local variable to `desired` for consistency.\n\nSigned-off-by: Shahaf Bahar <sbahar@redhat.com>",
"is_bot": false,
"headline": "refactor(resourcemanagers): align PingSource with KafkaSource structure",
"author_name": "Shahaf Bahar",
"author_login": "sbahar619",
"committed_at": "2026-07-05T08:17:34Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "d2e27322be274773258836a76b60d2089fb6977b",
"body": "…nMapping and KnativeService\n\nDirect spec assignment aliased the prepared resource's spec into\nthe live object, risking mutation across callers. DeepCopy before\nassignment makes each update independent, consistent with the\npattern already used in Certificate and other managers.\n\nSigned-off-by: Shahaf Bahar <sbahar@redhat.com>",
"is_bot": false,
"headline": "refactor(resourcemanagers): deep-copy spec before assignment in Domai…",
"author_name": "Shahaf Bahar",
"author_login": "sbahar619",
"committed_at": "2026-07-05T08:03:44Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "024e8d8e6f655c7795fd83d4721f165a237ef8ea",
"body": "Manage now delegates to createOrUpdate when the Certificate is\nrequired, matching the structure of every other resource manager.\nNo behaviour change.\n\nSigned-off-by: Shahaf Bahar <sbahar@redhat.com>",
"is_bot": false,
"headline": "refactor(resourcemanagers): extract CertificateManager.createOrUpdate",
"author_name": "Shahaf Bahar",
"author_login": "sbahar619",
"committed_at": "2026-07-05T08:01:01Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "0102688e8d0126b1601e67b103b5bc6408385684",
"body": "The DNS record update no longer re-fetches the latest resource inside\na RetryOnConflict loop. It now updates the already-fetched record\ndirectly, consistent with how other resource managers handle updates.\n\nSigned-off-by: Shahaf Bahar <sbahar@redhat.com>",
"is_bot": false,
"headline": "refactor(dnsrecord): remove retry loop from createOrUpdate",
"author_name": "Shahaf Bahar",
"author_login": "sbahar619",
"committed_at": "2026-07-05T07:34:50Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "71bf68b171b5b6c331ee58316c70500a7dfa4fc8",
"body": "Replace duplicated delete loops with a shared helper that skips\nCapp-owned resources during finalization. KafkaSource and PingSource\nnow apply the same owner-reference guard as other list-based managers.\n\nSigned-off-by: Shahaf Bahar <sbahar@redhat.com>",
"is_bot": false,
"headline": "refactor(resourcemanagers): centralize list-based CleanUp deletion",
"author_name": "Shahaf Bahar",
"author_login": "sbahar619",
"committed_at": "2026-07-02T12:48:42Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "034afea2f473750315f612a2f19c8dd2b9a18779",
"body": "Manager identity constants previously used camelCase values that did\nnot match their Kubernetes CRD Kind names, causing inconsistency in\nevents, owner references, and list filtering. All constants now use\nPascalCase Kind names as the canonical value.\n\nSigned-off-by: Shahaf Bahar <sbahar@redhat.com>",
"is_bot": false,
"headline": "refactor(resourcemanagers): align manager constants with CRD Kind names",
"author_name": "Shahaf Bahar",
"author_login": "sbahar619",
"committed_at": "2026-07-02T11:28:40Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "c904fee7fead82a8f61f9134bc3a2b363da8807f",
"body": "refactor(validator): move scale validation to helper",
"is_bot": true,
"headline": "Merge pull request #636 from Afik17/refactor/scale-validation-helper",
"author_name": "dana-prow-ci[bot]",
"author_login": "dana-prow-ci[bot]",
"committed_at": "2026-07-02T10:55:22Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "3b30a6d2cdccb18b49db4db8f61f4d7302c34b71",
"body": "feat: add unit tests for validateScaleSpec\n\nrefactor: add test case in TestCappValidatorHandle",
"is_bot": false,
"headline": "refactor(validator): move scale validation to helper",
"author_name": "afik17",
"author_login": null,
"committed_at": "2026-07-02T10:30:10Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "3bf66a028c0295dfca3aa12a2f7394f64f60abea",
"body": "Cross-source fixtures in the \"cleans up when not required\" sub-tests\nimplied a causal link that doesn't exist — an empty spec triggers the\nsame CleanUp path. Remove the noise and rename to reflect the actual\nManage contract.\n\nSigned-off-by: Shahaf Bahar <sbahar@redhat.com>",
"is_bot": false,
"headline": "test(resourcemanagers): clarify source manager cleanup sub-tests",
"author_name": "Shahaf Bahar",
"author_login": "sbahar619",
"committed_at": "2026-07-02T07:54:32Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "5744087438fce249e1b9921a1948f34342b873f2",
"body": "When a DomainMapping was owned by the deleting Capp, the early\n`continue` bypassed Secret cleanup. cert-manager does not cascade-\ndelete Secrets, so the TLS Secret was permanently orphaned.\n\nCloses #644\n\nSigned-off-by: Shahaf Bahar <sbahar@redhat.com>",
"is_bot": false,
"headline": "fix(domainmapping): prevent TLS secret leak on Capp deletion",
"author_name": "Shahaf Bahar",
"author_login": "sbahar619",
"committed_at": "2026-07-02T07:01:04Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "232529251220881ce0e27d892f4f4ae3b810a251",
"body": "Bumps [knative.dev/serving](https://github.com/knative/serving) from 0.49.0 to 0.49.1.\n- [Release notes](https://github.com/knative/serving/releases)\n- [Commits](https://github.com/knative/serving/compare/v0.49.0...v0.49.1)\n\n---\nupdated-dependencies:\n- dependency-name: knative.dev/serving\n dependency-version: 0.49.1\n dependency-type: direct:production\n update-type: version-update:semver-patch\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>",
"is_bot": true,
"headline": "chore(deps): bump knative.dev/serving from 0.49.0 to 0.49.1",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-07-01T18:23:16Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "9bc5d28df3222df8a1cb072905a1de2caf3e263b",
"body": "Bumps [github.com/cert-manager/cert-manager](https://github.com/cert-manager/cert-manager) from 1.20.2 to 1.20.3.\n- [Release notes](https://github.com/cert-manager/cert-manager/releases)\n- [Changelog](https://github.com/cert-manager/cert-manager/blob/master/RELEASE.md)\n- [Commits](https://github.com\n[…]\nthub.com/cert-manager/cert-manager\n dependency-version: 1.20.3\n dependency-type: direct:production\n update-type: version-update:semver-patch\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>",
"is_bot": true,
"headline": "chore(deps): bump github.com/cert-manager/cert-manager",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-07-01T18:23:10Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "6fb22f3cec40c6db38f3a12b519ffdcb8e01ee8b",
"body": "Bumps [actions/checkout](https://github.com/actions/checkout) from 6.0.3 to 7.0.0.\n- [Release notes](https://github.com/actions/checkout/releases)\n- [Commits](https://github.com/actions/checkout/compare/v6.0.3...v7)\n\n---\nupdated-dependencies:\n- dependency-name: actions/checkout\n dependency-version: 7.0.0\n dependency-type: direct:production\n update-type: version-update:semver-major\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>",
"is_bot": true,
"headline": "chore(deps): bump actions/checkout from 6.0.3 to 7.0.0",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-07-01T18:23:05Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "a3edfac80bfa094b1f7e4c084dc1303fb956447c",
"body": "…Client\n\nCappRevision create and delete now use the shared client for\nconsistent logging and error handling.\n\nSigned-off-by: Shahaf Bahar <sbahar@redhat.com>",
"is_bot": false,
"headline": "refactor(capprevision): route revision writes through ResourceManager…",
"author_name": "Shahaf Bahar",
"author_login": "sbahar619",
"committed_at": "2026-07-01T08:01:29Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "012bb6b8d5188ba5530069bbf25a87b20cc64b1d",
"body": "…ient\n\nFinalizer functions previously accepted a bare client.Client and\nemitted manual log lines before each update. They now accept\nResourceManagerClient, delegating writes to UpdateResource so all\nwrite-path logging is consistent with the rest of the capp package.\n\nSigned-off-by: Shahaf Bahar <sbahar@redhat.com>",
"is_bot": false,
"headline": "refactor(finalizer): route finalizer writes through ResourceManagerCl…",
"author_name": "Shahaf Bahar",
"author_login": "sbahar619",
"committed_at": "2026-07-01T07:58:42Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "e2ec9a6fb10272bcc6708af04df91ba386171db3",
"body": "ObjectIdentityKeyVals was defined in the resourceclient package but used\nacross unrelated packages (finalizer, status, capprevision). Moving it\nto the shared utils package removes the cross-package coupling and gives\nit a more appropriate home alongside other general-purpose helpers.\n\nSigned-off-by: Shahaf Bahar <sbahar@redhat.com>",
"is_bot": false,
"headline": "refactor(resourceclient): move ObjectIdentityKeyVals to utils package",
"author_name": "Shahaf Bahar",
"author_login": "sbahar619",
"committed_at": "2026-07-01T07:43:37Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "458f8e0384f40fb75d332b55456c6735db8c146b",
"body": "…ed package\n\nEach stub was used by exactly one resource manager, making the shared\nfile an unnecessary indirection. Eliminating it narrows the public\nsurface of the resourceclient package toward its core responsibility.\n\nSigned-off-by: Shahaf Bahar <sbahar@redhat.com>",
"is_bot": false,
"headline": "refactor(resourceclient): remove single-caller helper stubs from shar…",
"author_name": "Shahaf Bahar",
"author_login": "sbahar619",
"committed_at": "2026-07-01T07:43:37Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "0634da1309925320741dac118318e8788b65eca6",
"body": "The exported field was named K8sclient, violating Go convention\nfor acronym casing. Renamed to K8sClient across all 20 files\n(field definition, method bodies, constructor literals, tests)\nwith no logic changes.\n\nSigned-off-by: Shahaf Bahar <sbahar@redhat.com>",
"is_bot": false,
"headline": "refactor(resourceclient): normalize K8sClient field casing",
"author_name": "Shahaf Bahar",
"author_login": "sbahar619",
"committed_at": "2026-07-01T07:43:37Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "89f2e305ba9b2448409e5f557c79b5c24c4ae92a",
"body": "The exported field was named K8sclient, violating Go convention\nfor acronym casing. Renamed to K8sClient across all 20 files\n(field definition, method bodies, constructor literals, tests)\nwith no logic changes.\n\nSigned-off-by: Shahaf Bahar <sbahar@redhat.com>",
"is_bot": false,
"headline": "refactor(resourceclient): normalize K8sClient field casing",
"author_name": "Shahaf Bahar",
"author_login": "sbahar619",
"committed_at": "2026-07-01T07:43:37Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "c66ba8334aabca976f74817a0490d1ecf64a5746",
"body": "Assert kafka and ping managers reconcile only their source type\nwhen the spec lists both.\n\nSigned-off-by: Shahaf Bahar <sbahar@redhat.com>",
"is_bot": false,
"headline": "test(resourcemanagers): cover mixed-source Manage skip paths",
"author_name": "Shahaf Bahar",
"author_login": "sbahar619",
"committed_at": "2026-07-01T07:43:37Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "d64ccd3b7c6386a7dce784c3a0e576ffa5dd33e3",
"body": "Assert CleanUp removes owned resources during Capp deletion when no\nowner reference is set, for knative service, NFS PVC, and syslog-ng\nmanagers. Add empty-cluster CleanUp success for NFS PVC.\n\nSigned-off-by: Shahaf Bahar <sbahar@redhat.com>",
"is_bot": false,
"headline": "test(resourcemanagers): cover finalizer delete without owner ref",
"author_name": "Shahaf Bahar",
"author_login": "sbahar619",
"committed_at": "2026-07-01T07:43:37Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "fa5707abfb606f342e92be338d5b21f388d3cd18",
"body": "Keep one mixed keep-and-delete case per source manager and align\nsubtest naming, removing ping table rows that duplicated the same\ncleanup branches without adding coverage.\n\nSigned-off-by: Shahaf Bahar <sbahar@redhat.com>",
"is_bot": false,
"headline": "test(resourcemanagers): trim redundant orphan cleanup scenarios",
"author_name": "Shahaf Bahar",
"author_login": "sbahar619",
"committed_at": "2026-07-01T07:43:37Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "20e50d27b42598bcbb13d073cb19f4d99707d065",
"body": "Remove CleanUp tests that duplicated delete paths already\ncovered by Manage not-required cleanup. Keeps finalizer and\nmanager-specific cases; kafka/ping delete stays on Manage only.\n\nSigned-off-by: Shahaf Bahar <sbahar@redhat.com>",
"is_bot": false,
"headline": "test(resourcemanagers): drop redundant CleanUp delete subtests",
"author_name": "Shahaf Bahar",
"author_login": "sbahar619",
"committed_at": "2026-07-01T07:43:37Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "4856c10e51faf328250b259f3d6a7ba6d5091af2",
"body": "Extract shared deleting-Capp setup for finalizer subtests so\nmanager CleanUp tests use one pattern instead of repeated inline\nDeletionTimestamp boilerplate.\n\nSigned-off-by: Shahaf Bahar <sbahar@redhat.com>",
"is_bot": false,
"headline": "test(resourcemanagers): dedupe CleanUp finalizer setup",
"author_name": "Shahaf Bahar",
"author_login": "sbahar619",
"committed_at": "2026-07-01T07:43:37Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "60a0fdbc2bf9be81bd5294aee4be681097fbe5e4",
"body": "Standardize absence checks and fail-fast assertions in kafka,\nnfs PVC, and ping source tests so the suite matches the package\nassertion contract.\n\nSigned-off-by: Shahaf Bahar <sbahar@redhat.com>",
"is_bot": false,
"headline": "test(resourcemanagers): align NotFound and require assertions",
"author_name": "Shahaf Bahar",
"author_login": "sbahar619",
"committed_at": "2026-07-01T07:43:37Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "f21161a3865d0ba93deed497fcb03634107d4971",
"body": "Shared event-source constants and entry builders live in fixtures\nso ping tests no longer depend on kafka-only definitions. Ping\nsetup reuses the shared entry pattern instead of repeated inline\nconfig structs.\n\nSigned-off-by: Shahaf Bahar <sbahar@redhat.com>",
"is_bot": false,
"headline": "test(resourcemanagers): centralize kafka and ping source fixtures",
"author_name": "Shahaf Bahar",
"author_login": "sbahar619",
"committed_at": "2026-07-01T07:43:37Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "a5efac44a1ac09e1e79b104ac0c76b9bdf733a17",
"body": "Align outer test identifiers and shared sub-test phrases across\nresourcemanagers suites so scenarios read consistently.\n\nSigned-off-by: Shahaf Bahar <sbahar@redhat.com>",
"is_bot": false,
"headline": "test(resourcemanagers): standardize manager test naming",
"author_name": "Shahaf Bahar",
"author_login": "sbahar619",
"committed_at": "2026-07-01T07:43:37Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "0b057c767faa85ae2797039907c89f3efc5e25d9",
"body": "…t-consistency\n\ntest(resourcemanagers): unify fake client setup across manager tests",
"is_bot": true,
"headline": "Merge pull request #621 from dana-team/test/ib01-resourcemanagers-tes…",
"author_name": "dana-prow-ci[bot]",
"author_login": "dana-prow-ci[bot]",
"committed_at": "2026-07-01T02:03:21Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "38d3ac75f59a668ecd626f9be74f8236d6d03f3b",
"body": "chore(lint): add deadcode checks in CI and locally",
"is_bot": false,
"headline": "Merge pull request #619 from sbahar619/lint-deadcode-phase",
"author_name": "Shahaf Bahar",
"author_login": "sbahar619",
"committed_at": "2026-06-30T08:47:51Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "20e272ef1f753a2278636e545dc21e0ff12ae74b",
"body": "Replace scattered fake client builders with a shared helper so\nmanager tests follow one consistent pattern. No behavior change.\n\nSigned-off-by: Shahaf Bahar <sbahar@redhat.com>",
"is_bot": false,
"headline": "test(resourcemanagers): unify fake client setup across manager tests",
"author_name": "Shahaf Bahar",
"author_login": "sbahar619",
"committed_at": "2026-06-28T08:30:54Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "2c23ae63f777b3e2fa39c4088aaa286207eda6ba",
"body": "test(resourcemanagers): add Certificate manager unit tests",
"is_bot": true,
"headline": "Merge pull request #617 from sbahar619/test/certificate-route-manager",
"author_name": "dana-prow-ci[bot]",
"author_login": "dana-prow-ci[bot]",
"committed_at": "2026-06-26T08:26:18Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "189ee5502a817e909519791ebb3403b90cb55124",
"body": "test(resourcemanagers): add DomainMapping manager unit tests",
"is_bot": true,
"headline": "Merge pull request #616 from sbahar619/test/domainmapping-route-manager",
"author_name": "dana-prow-ci[bot]",
"author_login": "dana-prow-ci[bot]",
"committed_at": "2026-06-26T08:25:17Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "5130215efa01fc0141e057a0752229e6f5e4b444",
"body": "Add make deadcode and a CI step after golangci-lint. No golangci\nconfig changes. Wire domain mapping cleanup so deadcode passes.\n\nSigned-off-by: Shahaf Bahar <sbahar@redhat.com>",
"is_bot": false,
"headline": "chore(lint): add deadcode checks in CI and locally",
"author_name": "Shahaf Bahar",
"author_login": "sbahar619",
"committed_at": "2026-06-25T12:55:40Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "836a927f79633461bb252de991dfaaac46236bd6",
"body": "Cover TLS certificate reconcile, cleanup when route is not required,\nand deletion behavior during capp teardown.\n\nSigned-off-by: Shahaf Bahar <sbahar@redhat.com>",
"is_bot": false,
"headline": "test(resourcemanagers): add Certificate manager unit tests",
"author_name": "Shahaf Bahar",
"author_login": "sbahar619",
"committed_at": "2026-06-25T08:46:58Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "4bc934c7d2e45a260651c3cc3cc70929262c8714",
"body": "Cover reconcile, TLS wiring, cleanup, and TLS secret removal.\nExtract shared route and DNS fixtures for DNSRecord and\nDomainMapping tests.\n\nSigned-off-by: Shahaf Bahar <sbahar@redhat.com>",
"is_bot": false,
"headline": "test(resourcemanagers): add DomainMapping manager unit tests",
"author_name": "Shahaf Bahar",
"author_login": "sbahar619",
"committed_at": "2026-06-25T06:00:09Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "2864d2df6bec64d76d77eba8d74b147a24861c2c",
"body": "…r-naming\n\nrefactor(capp): simplify domain mapping manager naming",
"is_bot": true,
"headline": "Merge pull request #615 from sbahar619/refactor/domain-mapping-manage…",
"author_name": "dana-prow-ci[bot]",
"author_login": "dana-prow-ci[bot]",
"committed_at": "2026-06-24T16:37:17Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "49631181d139f674ff47d287395ecac8754ffc57",
"body": "test(resourcemanagers): add SyslogNGFlow unit tests",
"is_bot": true,
"headline": "Merge pull request #613 from sbahar619/test/syslogngflow-manage-cleanup",
"author_name": "dana-prow-ci[bot]",
"author_login": "dana-prow-ci[bot]",
"committed_at": "2026-06-24T16:36:17Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "df82a5dd3abe0ebdfb84d8db24fc65efe5ab06d5",
"body": "…anup\n\ntest(resourcemanagers): add SyslogNGOutput unit tests",
"is_bot": true,
"headline": "Merge pull request #610 from sbahar619/test/syslogngoutput-manage-cle…",
"author_name": "dana-prow-ci[bot]",
"author_login": "dana-prow-ci[bot]",
"committed_at": "2026-06-24T16:35:17Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "aebbee9c4d179bdecb8710bc62c62c0788d6411e",
"body": "test(ksvc): align test names with resourcemanagers convention",
"is_bot": true,
"headline": "Merge pull request #609 from sbahar619/refactor/ksvc-test-naming",
"author_name": "dana-prow-ci[bot]",
"author_login": "dana-prow-ci[bot]",
"committed_at": "2026-06-24T16:34:17Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "8931f60a8b578eef166bcc36f5ea9d21468011a0",
"body": "test(resourcemanagers): add NFSPVC unit tests",
"is_bot": true,
"headline": "Merge pull request #608 from sbahar619/test/nfspvc-manage-cleanup",
"author_name": "dana-prow-ci[bot]",
"author_login": "dana-prow-ci[bot]",
"committed_at": "2026-06-24T16:33:17Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "bba17ee25495eca6e212b61096c2abe5dd7a773b",
"body": "test(resourcemanagers): add PingSource Manage and CleanUp tests",
"is_bot": true,
"headline": "Merge pull request #607 from sbahar619/test/pingsource-manage-cleanup",
"author_name": "dana-prow-ci[bot]",
"author_login": "dana-prow-ci[bot]",
"committed_at": "2026-06-24T16:32:18Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "32d0b81e4aec319bc2fc6296551f811c0db6f244",
"body": "test(resourcemanagers): add DNSRecordManager unit tests",
"is_bot": true,
"headline": "Merge pull request #614 from sbahar619/test/dnsrecord-manage-cleanup",
"author_name": "dana-prow-ci[bot]",
"author_login": "dana-prow-ci[bot]",
"committed_at": "2026-06-24T16:31:16Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "617ba30e65a0170957045fcfafe8fc60d9376052",
"body": "Drop the redundant Knative prefix so domain mapping follows the same\nnaming pattern as other route resource managers. No behavior change.\n\nSigned-off-by: Shahaf Bahar <sbahar@redhat.com>",
"is_bot": false,
"headline": "refactor(capp): simplify domain mapping manager naming",
"author_name": "Shahaf Bahar",
"author_login": "sbahar619",
"committed_at": "2026-06-24T12:38:36Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "9674d79c0d9fa7bf34958fc0ecee2291e21e22b6",
"body": "Cover create, update, manage, and cleanup paths for custom-route\nDNS records, including FQDN hostname handling and deletion guards.\n\nSigned-off-by: Shahaf Bahar <sbahar@redhat.com>",
"is_bot": false,
"headline": "test(resourcemanagers): add DNSRecordManager unit tests",
"author_name": "Shahaf Bahar",
"author_login": "sbahar619",
"committed_at": "2026-06-24T08:15:26Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "d81ba15f0e0dabb12eaa901c393f524093affa64",
"body": "Extend logging operator test coverage with flow reconcile and cleanup\npaths, and centralize shared syslog fixtures used by output and flow\ntests.\n\nSigned-off-by: Shahaf Bahar <sbahar@redhat.com>",
"is_bot": false,
"headline": "test(resourcemanagers): add SyslogNGFlow unit tests",
"author_name": "Shahaf Bahar",
"author_login": "sbahar619",
"committed_at": "2026-06-23T08:33:16Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "a8e44bd7709eaeb076a62851c6e976ee37b6f91d",
"body": "Cover createOrUpdate, Manage, and CleanUp for elastic and\nelastic-datastream log types.\n\nSigned-off-by: Shahaf Bahar <sbahar@redhat.com>",
"is_bot": false,
"headline": "test(resourcemanagers): add SyslogNGOutput unit tests",
"author_name": "Shahaf Bahar",
"author_login": "sbahar619",
"committed_at": "2026-06-21T12:28:35Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "37bd3b4cfa69ac1397101044a9f85b27328b2244",
"body": "Drop Manager from ksvc Test* names to match Test{Resource}{Method}.\n\nSigned-off-by: Shahaf Bahar <sbahar@redhat.com>",
"is_bot": false,
"headline": "test(ksvc): align test names with resourcemanagers convention",
"author_name": "Shahaf Bahar",
"author_login": "sbahar619",
"committed_at": "2026-06-21T11:50:28Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "20f66e513324e5e3058739dacb6ee84ffd1862c6",
"body": "Cover createOrUpdate, Manage, and CleanUp mirroring Kafka/Ping\npatterns.\n\nSigned-off-by: Shahaf Bahar <sbahar@redhat.com>",
"is_bot": false,
"headline": "test(resourcemanagers): add NFSPVC unit tests",
"author_name": "Shahaf Bahar",
"author_login": "sbahar619",
"committed_at": "2026-06-21T09:16:02Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "d80a9865950f1bcfc0b2710e46d5a51c8e2982bb",
"body": "Mirror KafkaSource coverage for PingSourceManager public API.\nCovers IsRequired indirectly via Manage branches.\n\nSigned-off-by: Shahaf Bahar <sbahar@redhat.com>",
"is_bot": false,
"headline": "test(resourcemanagers): add PingSource Manage and CleanUp tests",
"author_name": "Shahaf Bahar",
"author_login": "sbahar619",
"committed_at": "2026-06-21T08:17:15Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "12724e9fac79f013021f03f42e39b2c4d14284c9",
"body": "feat: add KafkaSource support to Capp",
"is_bot": true,
"headline": "Merge pull request #601 from dana-team/feat/kafka-source",
"author_name": "dana-prow-ci[bot]",
"author_login": "dana-prow-ci[bot]",
"committed_at": "2026-06-14T06:28:07Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "bcb20c49306fba3d3acf935008bba22241b74fb9",
"body": "Let Capps declare Kafka event sources and have the operator manage\ntheir full lifecycle. Extend the event source API, status, validation,\ntests, and user docs alongside existing PingSource support.\n\nSigned-off-by: Shahaf Bahar <sbahar@redhat.com>",
"is_bot": false,
"headline": "feat: add KafkaSource support to Capp",
"author_name": "Shahaf Bahar",
"author_login": "sbahar619",
"committed_at": "2026-06-11T07:57:29Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "ad18a32ea1c351cc0e75820f7da5b51f87ba7847",
"body": "refactor(cert): make certificate issuer configurable via CappConfig",
"is_bot": true,
"headline": "Merge pull request #602 from dana-team/feat/drop-cert-external-issuer",
"author_name": "dana-prow-ci[bot]",
"author_login": "dana-prow-ci[bot]",
"committed_at": "2026-06-11T07:49:06Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "298c90d7ee9cb33612dfc9ab10dc653ac953adde",
"body": "chore: refactor Knative prereq install to v1.22",
"is_bot": true,
"headline": "Merge pull request #606 from dana-team/chore/knative-prereq-refactor",
"author_name": "dana-prow-ci[bot]",
"author_login": "dana-prow-ci[bot]",
"committed_at": "2026-06-11T07:47:06Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "00018abc19086cf7fc7cb4cd5ddfd88f5b371e6d",
"body": "chore(ci): bump e2e kind cluster to Kubernetes v1.34.0",
"is_bot": true,
"headline": "Merge pull request #605 from dana-team/chore/bump-e2e-k8s-version",
"author_name": "dana-prow-ci[bot]",
"author_login": "dana-prow-ci[bot]",
"committed_at": "2026-06-11T07:37:06Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "8f88fbd893c54dd96e381dc0f3cc5d4fe663d6a6",
"body": "Hardcoded ClusterIssuer kind and cert-external-issuer group prevented\nusing any other cert-manager issuer type. IssuerKind and IssuerGroup\nare now required fields in DNSConfig, removing the forced dependency\non cert-external-issuer entirely.",
"is_bot": false,
"headline": "refactor(cert): make certificate issuer configurable via CappConfig",
"author_name": "dvirgilad",
"author_login": "dvirgilad",
"committed_at": "2026-06-11T07:36:56Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "7310bc4c98dd16f8c7dc0bf9d3fcdcae806ddaa1",
"body": "chore: sync chart CappConfig CRD with generated base",
"is_bot": true,
"headline": "Merge pull request #604 from dana-team/chore/sync-cappconfig-chart-crd",
"author_name": "dana-prow-ci[bot]",
"author_login": "dana-prow-ci[bot]",
"committed_at": "2026-06-11T07:36:06Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "10883bda32510a7158d11b7c1f2fa05dbd83a24f",
"body": "Replace kn-quickstart with explicit serving, eventing, and Kourier\ninstalls. Unify KNATIVE_VERSION and add configure-knative for ingress\nand NFS patches.\n\nSigned-off-by: Shahaf Bahar <sbahar@redhat.com>",
"is_bot": false,
"headline": "chore: refactor Knative prereq install to v1.22",
"author_name": "Shahaf Bahar",
"author_login": "sbahar619",
"committed_at": "2026-06-11T07:33:35Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "905c2f3223149ae5b7319af16c6577c108d010ca",
"body": "Signed-off-by: Shahaf Bahar <sbahar@redhat.com>",
"is_bot": false,
"headline": "chore(ci): bump e2e kind cluster to Kubernetes v1.34.0",
"author_name": "Shahaf Bahar",
"author_login": "sbahar619",
"committed_at": "2026-06-11T07:00:45Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "9be9e86af0268abfa1399afc73629f787dedf87c",
"body": "Chart copy of rcs.dana.io_cappconfigs.yaml lagged config/crd/bases.\n\nSigned-off-by: Shahaf Bahar <sbahar@redhat.com>",
"is_bot": false,
"headline": "chore: sync chart CappConfig CRD with generated base",
"author_name": "Shahaf Bahar",
"author_login": "sbahar619",
"committed_at": "2026-06-11T06:50:50Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "1c243139522bcdc3d38cb9efd728e20933911a1a",
"body": "refactor(webhook): strengthen validateSecretHasKeys helper",
"is_bot": true,
"headline": "Merge pull request #599 from dana-team/refactor/webhook-secret-has-keys",
"author_name": "dana-prow-ci[bot]",
"author_login": "dana-prow-ci[bot]",
"committed_at": "2026-06-10T06:46:04Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "d88d6b2ae3c3dcdc13971beb182d962695fe2a35",
"body": "Reject empty secret keys. Inline password secret check in handle.\nAdd unit tests and trim duplicate Handle cases.\n\nSigned-off-by: Shahaf Bahar <sbahar@redhat.com>",
"is_bot": false,
"headline": "refactor(webhook): strengthen validateSecretHasKeys helper",
"author_name": "Shahaf Bahar",
"author_login": "sbahar619",
"committed_at": "2026-06-09T12:05:41Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "f66da6aab908486d7382977335656c7f666ea778",
"body": "feat: validate PasswordSecret existence at admission time",
"is_bot": true,
"headline": "Merge pull request #584 from dana-team/feat/516-validate-password-secret",
"author_name": "dana-prow-ci[bot]",
"author_login": "dana-prow-ci[bot]",
"committed_at": "2026-06-09T09:14:05Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "0db97fa11849e3bc2f34f1b23dcfc4114d4fdfb1",
"body": "feat: populate Ready condition on CappStatus",
"is_bot": true,
"headline": "Merge pull request #544 from dana-team/feat/527-capp-status-conditions",
"author_name": "dana-prow-ci[bot]",
"author_login": "dana-prow-ci[bot]",
"committed_at": "2026-06-09T09:10:04Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "c708f0af028dade8c4dee78f6f217ca543d09edc",
"body": "Check that the Secret referenced by LogSpec.PasswordSecret exists and\ncontains the required \"elastic\" key. Catches misconfigured secrets at\napply time instead of failing silently at runtime.\n\nCloses #516",
"is_bot": false,
"headline": "feat: validate PasswordSecret existence and required key at admission",
"author_name": "Ella",
"author_login": "elmatuso",
"committed_at": "2026-06-09T09:07:17Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "abf11d3c0e7180fd4662d48498a5d687e3f8a463",
"body": "Derive a top-level Ready condition from the readiness of each configured\nsub-resource (logging, domain mapping, certificate, NFS volumes, eventing,\nknative). Uses the resourceManagers map directly to determine which\nfeatures are enabled. Knative is always checked; the latest revision is\nverified to be the ready one.\n\nCloses #527",
"is_bot": false,
"headline": "feat: populate Ready condition on CappStatus",
"author_name": "Ella",
"author_login": "elmatuso",
"committed_at": "2026-06-08T13:30:14Z",
"body_truncated": false,
"is_coding_agent": false
}
],
"releases_count": 38,
"commits_last_year": 475,
"latest_release_at": "2026-07-19T06:41:13Z",
"latest_release_tag": "v0.9.2",
"releases_from_tags": false,
"days_since_last_push": 0,
"active_weeks_last_year": 37,
"days_since_latest_release": 6,
"mean_days_between_releases": 9.1
},
"community": {
"has_readme": true,
"has_license": true,
"has_description": true,
"has_contributing": false,
"health_percentage": 37,
"has_issue_template": false,
"has_code_of_conduct": false,
"has_pull_request_template": false
},
"ecosystem": {
"packages": [
{
"name": "github.com/dana-team/container-app-operator",
"exists": true,
"license": null,
"keywords": [],
"ecosystem": "go",
"matches_repo": true,
"registry_url": "https://pkg.go.dev/github.com/dana-team/container-app-operator",
"is_deprecated": false,
"latest_version": "v0.9.2",
"repository_url": "https://github.com/dana-team/container-app-operator",
"versions_count": 38,
"total_downloads": null,
"dependents_count": null,
"deprecation_note": null,
"maintainers_count": null,
"monthly_downloads": null,
"first_published_at": null,
"latest_published_at": "2026-07-19T06:34:56Z",
"latest_version_yanked": null,
"days_since_latest_publish": 6
}
]
},
"popularity": {
"forks": 12,
"stars": 9,
"watchers": 0,
"fork_history": {
"days": [
{
"date": "2023-07-10",
"count": 1
},
{
"date": "2023-07-17",
"count": 1
},
{
"date": "2023-07-18",
"count": 1
},
{
"date": "2023-07-30",
"count": 1
},
{
"date": "2023-08-12",
"count": 1
},
{
"date": "2024-02-05",
"count": 1
},
{
"date": "2024-04-07",
"count": 1
},
{
"date": "2024-06-09",
"count": 1
},
{
"date": "2024-08-16",
"count": 1
},
{
"date": "2024-11-14",
"count": 1
},
{
"date": "2025-11-09",
"count": 1
},
{
"date": "2026-06-30",
"count": 1
}
],
"complete": true,
"collected": 12,
"total_forks": 12
},
"star_history": null,
"open_issues_and_prs": 30
},
"ai_readiness": {
"has_nix": false,
"example_dirs": [
"examples",
"samples"
],
"has_llms_txt": false,
"has_dockerfile": true,
"has_mcp_signal": false,
"bootstrap_files": [
"Makefile"
],
"api_schema_files": [],
"has_devcontainer": true,
"typecheck_configs": [],
"toolchain_manifests": [
"go.mod"
],
"largest_source_bytes": 22623,
"source_files_sampled": 84,
"oversized_source_files": 0,
"agent_instruction_files": [],
"agent_instruction_max_bytes": null
},
"dependencies": {
"manifests": [
"go.mod"
],
"advisories": {
"error": null,
"scope": "repository_graph",
"source": "osv",
"findings": [
{
"name": "google.golang.org/grpc",
"direct": false,
"version": "v1.80.0",
"severity": "critical",
"ecosystem": "go",
"cvss_score": 9.1,
"advisory_ids": [
"GHSA-hrxh-6v49-42gf"
],
"fixed_version": "1.82.1",
"advisory_count": 1,
"oldest_advisory_days": 4
},
{
"name": "github.com/google/cel-go",
"direct": false,
"version": "v0.26.1",
"severity": "moderate",
"ecosystem": "go",
"cvss_score": 5.3,
"advisory_ids": [
"GHSA-gcjh-h69q-9w9g"
],
"fixed_version": "0.29.0",
"advisory_count": 1,
"oldest_advisory_days": 1
},
{
"name": "github.com/yuin/goldmark",
"direct": false,
"version": "v1.7.13",
"severity": "unknown",
"ecosystem": "go",
"cvss_score": null,
"advisory_ids": [
"GO-2026-5320"
],
"fixed_version": "1.7.17",
"advisory_count": 1,
"oldest_advisory_days": 18
},
{
"name": "go.opentelemetry.io/otel",
"direct": false,
"version": "v1.43.0",
"severity": "unknown",
"ecosystem": "go",
"cvss_score": null,
"advisory_ids": [
"GO-2026-5158"
],
"fixed_version": "1.44.0",
"advisory_count": 1,
"oldest_advisory_days": 1
},
{
"name": "golang.org/x/crypto",
"direct": false,
"version": "v0.53.0",
"severity": "unknown",
"ecosystem": "go",
"cvss_score": null,
"advisory_ids": [
"GO-2026-5932"
],
"fixed_version": null,
"advisory_count": 1,
"oldest_advisory_days": 18
},
{
"name": "golang.org/x/text",
"direct": false,
"version": "v0.38.0",
"severity": "unknown",
"ecosystem": "go",
"cvss_score": null,
"advisory_ids": [
"GO-2026-5970"
],
"fixed_version": "0.39.0",
"advisory_count": 1,
"oldest_advisory_days": 11
}
],
"collected": true,
"malicious": [],
"truncated": false,
"by_severity": {
"unknown": 4,
"critical": 1,
"moderate": 1
},
"advisory_count": 6,
"affected_count": 6,
"assessed_count": 383,
"malicious_count": 0,
"assessed_package": null,
"unassessed_count": 0,
"direct_affected_count": 0
},
"ecosystems": [
"go"
],
"dependencies": [
{
"name": "github.com/cert-manager/cert-manager",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v1.20.3"
},
{
"name": "github.com/cisco-open/operator-tools",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v0.37.0"
},
{
"name": "github.com/cloudevents/sdk-go/v2",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v2.16.2"
},
{
"name": "github.com/crossplane/crossplane-runtime/v2",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v2.2.2"
},
{
"name": "github.com/dana-team/nfspvc-operator",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v0.5.2"
},
{
"name": "github.com/dana-team/provider-dns-v2",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v1.0.2"
},
{
"name": "github.com/go-logr/logr",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v1.4.3"
},
{
"name": "github.com/go-logr/zapr",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v1.3.0"
},
{
"name": "github.com/kube-logging/logging-operator/pkg/sdk",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v0.12.1-0.20260415160252-e637b3f6d15d"
},
{
"name": "github.com/onsi/ginkgo/v2",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v2.29.0"
},
{
"name": "github.com/onsi/gomega",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v1.42.1"
},
{
"name": "github.com/openshift/api",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v0.0.0-20251103120323-33ccad512a44"
},
{
"name": "github.com/stretchr/testify",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v1.11.1"
},
{
"name": "go.elastic.co/ecszap",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v1.0.3"
},
{
"name": "go.uber.org/zap",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v1.28.0"
},
{
"name": "k8s.io/api",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v0.36.2"
},
{
"name": "k8s.io/apimachinery",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v0.36.2"
},
{
"name": "k8s.io/client-go",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v0.36.2"
},
{
"name": "knative.dev/eventing",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v0.49.1"
},
{
"name": "knative.dev/eventing-kafka-broker",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v0.49.1"
},
{
"name": "knative.dev/pkg",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v0.0.0-20260531000007-52dbd5ece63f"
},
{
"name": "knative.dev/serving",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v0.49.1"
},
{
"name": "sigs.k8s.io/controller-runtime",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v0.24.0"
}
],
"all_dependencies": {
"error": null,
"source": "github-sbom",
"packages": [
{
"name": "github.com/cert-manager/cert-manager",
"direct": true,
"version": "v1.20.3",
"ecosystem": "go"
},
{
"name": "github.com/cisco-open/operator-tools",
"direct": true,
"version": "v0.37.0",
"ecosystem": "go"
},
{
"name": "github.com/cloudevents/sdk-go/v2",
"direct": true,
"version": "v2.16.2",
"ecosystem": "go"
},
{
"name": "github.com/crossplane/crossplane-runtime/v2",
"direct": true,
"version": "v2.2.2",
"ecosystem": "go"
},
{
"name": "github.com/dana-team/nfspvc-operator",
"direct": true,
"version": "v0.5.2",
"ecosystem": "go"
},
{
"name": "github.com/dana-team/provider-dns-v2",
"direct": true,
"version": "v1.0.2",
"ecosystem": "go"
},
{
"name": "github.com/go-logr/logr",
"direct": true,
"version": "v1.4.3",
"ecosystem": "go"
},
{
"name": "github.com/go-logr/zapr",
"direct": true,
"version": "v1.3.0",
"ecosystem": "go"
},
{
"name": "github.com/kube-logging/logging-operator/pkg/sdk",
"direct": true,
"version": "v0.12.1-0.20260415160252-e637b3f6d15d",
"ecosystem": "go"
},
{
"name": "github.com/onsi/ginkgo/v2",
"direct": true,
"version": "v2.29.0",
"ecosystem": "go"
},
{
"name": "github.com/onsi/gomega",
"direct": true,
"version": "v1.42.1",
"ecosystem": "go"
},
{
"name": "github.com/openshift/api",
"direct": true,
"version": "v0.0.0-20251103120323-33ccad512a44",
"ecosystem": "go"
},
{
"name": "github.com/stretchr/testify",
"direct": true,
"version": "v1.11.1",
"ecosystem": "go"
},
{
"name": "go.elastic.co/ecszap",
"direct": true,
"version": "v1.0.3",
"ecosystem": "go"
},
{
"name": "go.uber.org/zap",
"direct": true,
"version": "v1.28.0",
"ecosystem": "go"
},
{
"name": "k8s.io/api",
"direct": true,
"version": "v0.36.2",
"ecosystem": "go"
},
{
"name": "k8s.io/apimachinery",
"direct": true,
"version": "v0.36.2",
"ecosystem": "go"
},
{
"name": "k8s.io/client-go",
"direct": true,
"version": "v0.36.2",
"ecosystem": "go"
},
{
"name": "knative.dev/eventing",
"direct": true,
"version": "v0.49.1",
"ecosystem": "go"
},
{
"name": "knative.dev/eventing-kafka-broker",
"direct": true,
"version": "v0.49.1",
"ecosystem": "go"
},
{
"name": "knative.dev/pkg",
"direct": true,
"version": "v0.0.0-20260531000007-52dbd5ece63f",
"ecosystem": "go"
},
{
"name": "knative.dev/serving",
"direct": true,
"version": "v0.49.1",
"ecosystem": "go"
},
{
"name": "sigs.k8s.io/controller-runtime",
"direct": true,
"version": "v0.24.0",
"ecosystem": "go"
},
{
"name": "4d63.com/gocheckcompilerdirectives",
"direct": false,
"version": "v1.3.0",
"ecosystem": "go"
},
{
"name": "4d63.com/gochecknoglobals",
"direct": false,
"version": "v0.2.2",
"ecosystem": "go"
},
{
"name": "cel.dev/expr",
"direct": false,
"version": "v0.25.1",
"ecosystem": "go"
},
{
"name": "charm.land/lipgloss/v2",
"direct": false,
"version": "v2.0.3",
"ecosystem": "go"
},
{
"name": "codeberg.org/chavacava/garif",
"direct": false,
"version": "v0.2.0",
"ecosystem": "go"
},
{
"name": "codeberg.org/polyfloyd/go-errorlint",
"direct": false,
"version": "v1.9.0",
"ecosystem": "go"
},
{
"name": "dario.cat/mergo",
"direct": false,
"version": "v1.0.2",
"ecosystem": "go"
},
{
"name": "dev.gaijin.team/go/exhaustruct/v4",
"direct": false,
"version": "v4.0.0",
"ecosystem": "go"
},
{
"name": "dev.gaijin.team/go/golib",
"direct": false,
"version": "v0.6.0",
"ecosystem": "go"
},
{
"name": "emperror.dev/errors",
"direct": false,
"version": "v0.8.1",
"ecosystem": "go"
},
{
"name": "github.com/4meepo/tagalign",
"direct": false,
"version": "v1.4.3",
"ecosystem": "go"
},
{
"name": "github.com/abirdcfly/dupword",
"direct": false,
"version": "v0.1.7",
"ecosystem": "go"
},
{
"name": "github.com/adminbenni/iota-mixing",
"direct": false,
"version": "v1.0.0",
"ecosystem": "go"
},
{
"name": "github.com/agext/levenshtein",
"direct": false,
"version": "v1.2.3",
"ecosystem": "go"
},
{
"name": "github.com/alecthomas/chroma/v2",
"direct": false,
"version": "v2.24.1",
"ecosystem": "go"
},
{
"name": "github.com/alecthomas/go-check-sumtype",
"direct": false,
"version": "v0.3.1",
"ecosystem": "go"
},
{
"name": "github.com/alexkohler/nakedret/v2",
"direct": false,
"version": "v2.0.6",
"ecosystem": "go"
},
{
"name": "github.com/alexkohler/prealloc",
"direct": false,
"version": "v1.1.0",
"ecosystem": "go"
},
{
"name": "github.com/alfatraining/structtag",
"direct": false,
"version": "v1.0.0",
"ecosystem": "go"
},
{
"name": "github.com/alingse/asasalint",
"direct": false,
"version": "v0.0.11",
"ecosystem": "go"
},
{
"name": "github.com/alingse/nilnesserr",
"direct": false,
"version": "v0.2.0",
"ecosystem": "go"
},
{
"name": "github.com/alwxsin/noinlineerr",
"direct": false,
"version": "v1.0.5",
"ecosystem": "go"
},
{
"name": "github.com/antchfx/htmlquery",
"direct": false,
"version": "v1.3.4",
"ecosystem": "go"
},
{
"name": "github.com/antchfx/xpath",
"direct": false,
"version": "v1.3.6",
"ecosystem": "go"
},
{
"name": "github.com/antlr/antlr4/runtime/go/antlr",
"direct": false,
"version": "v1.4.10",
"ecosystem": "go"
},
{
"name": "github.com/antlr4-go/antlr/v4",
"direct": false,
"version": "v4.13.1",
"ecosystem": "go"
},
{
"name": "github.com/antonboom/errname",
"direct": false,
"version": "v1.1.1",
"ecosystem": "go"
},
{
"name": "github.com/antonboom/nilnil",
"direct": false,
"version": "v1.1.1",
"ecosystem": "go"
},
{
"name": "github.com/antonboom/testifylint",
"direct": false,
"version": "v1.6.4",
"ecosystem": "go"
},
{
"name": "github.com/apparentlymart/go-textseg/v15",
"direct": false,
"version": "v15.0.0",
"ecosystem": "go"
},
{
"name": "github.com/ashanbrown/forbidigo/v2",
"direct": false,
"version": "v2.3.1",
"ecosystem": "go"
},
{
"name": "github.com/ashanbrown/makezero/v2",
"direct": false,
"version": "v2.2.1",
"ecosystem": "go"
},
{
"name": "github.com/aws/aws-msk-iam-sasl-signer-go",
"direct": false,
"version": "v1.0.4",
"ecosystem": "go"
},
{
"name": "github.com/aws/aws-sdk-go-v2",
"direct": false,
"version": "v1.41.2",
"ecosystem": "go"
},
{
"name": "github.com/aws/aws-sdk-go-v2/config",
"direct": false,
"version": "v1.32.10",
"ecosystem": "go"
},
{
"name": "github.com/aws/aws-sdk-go-v2/credentials",
"direct": false,
"version": "v1.19.10",
"ecosystem": "go"
},
{
"name": "github.com/aws/aws-sdk-go-v2/feature/ec2/imds",
"direct": false,
"version": "v1.18.18",
"ecosystem": "go"
},
{
"name": "github.com/aws/aws-sdk-go-v2/internal/configsources",
"direct": false,
"version": "v1.4.18",
"ecosystem": "go"
},
{
"name": "github.com/aws/aws-sdk-go-v2/internal/endpoints/v2",
"direct": false,
"version": "v2.7.18",
"ecosystem": "go"
},
{
"name": "github.com/aws/aws-sdk-go-v2/internal/ini",
"direct": false,
"version": "v1.8.4",
"ecosystem": "go"
},
{
"name": "github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding",
"direct": false,
"version": "v1.13.5",
"ecosystem": "go"
},
{
"name": "github.com/aws/aws-sdk-go-v2/service/internal/presigned-url",
"direct": false,
"version": "v1.13.18",
"ecosystem": "go"
},
{
"name": "github.com/aws/aws-sdk-go-v2/service/signin",
"direct": false,
"version": "v1.0.6",
"ecosystem": "go"
},
{
"name": "github.com/aws/aws-sdk-go-v2/service/sso",
"direct": false,
"version": "v1.30.11",
"ecosystem": "go"
},
{
"name": "github.com/aws/aws-sdk-go-v2/service/ssooidc",
"direct": false,
"version": "v1.35.15",
"ecosystem": "go"
},
{
"name": "github.com/aws/aws-sdk-go-v2/service/sts",
"direct": false,
"version": "v1.41.7",
"ecosystem": "go"
},
{
"name": "github.com/aws/smithy-go",
"direct": false,
"version": "v1.24.2",
"ecosystem": "go"
},
{
"name": "github.com/beorn7/perks",
"direct": false,
"version": "v1.0.1",
"ecosystem": "go"
},
{
"name": "github.com/bkielbasa/cyclop",
"direct": false,
"version": "v1.2.3",
"ecosystem": "go"
},
{
"name": "github.com/blang/semver/v4",
"direct": false,
"version": "v4.0.0",
"ecosystem": "go"
},
{
"name": "github.com/blendle/zapdriver",
"direct": false,
"version": "v1.3.1",
"ecosystem": "go"
},
{
"name": "github.com/blizzy78/varnamelen",
"direct": false,
"version": "v0.8.0",
"ecosystem": "go"
},
{
"name": "github.com/bombsimon/wsl/v4",
"direct": false,
"version": "v4.7.0",
"ecosystem": "go"
},
{
"name": "github.com/bombsimon/wsl/v5",
"direct": false,
"version": "v5.8.0",
"ecosystem": "go"
},
{
"name": "github.com/breml/bidichk",
"direct": false,
"version": "v0.3.3",
"ecosystem": "go"
},
{
"name": "github.com/breml/errchkjson",
"direct": false,
"version": "v0.4.1",
"ecosystem": "go"
},
{
"name": "github.com/burntsushi/toml",
"direct": false,
"version": "v1.6.0",
"ecosystem": "go"
},
{
"name": "github.com/butuzov/ireturn",
"direct": false,
"version": "v0.4.1",
"ecosystem": "go"
},
{
"name": "github.com/butuzov/mirror",
"direct": false,
"version": "v1.3.0",
"ecosystem": "go"
},
{
"name": "github.com/catenacyber/perfsprint",
"direct": false,
"version": "v0.10.1",
"ecosystem": "go"
},
{
"name": "github.com/ccojocar/zxcvbn-go",
"direct": false,
"version": "v1.0.4",
"ecosystem": "go"
},
{
"name": "github.com/cenkalti/backoff/v5",
"direct": false,
"version": "v5.0.3",
"ecosystem": "go"
},
{
"name": "github.com/cespare/xxhash/v2",
"direct": false,
"version": "v2.3.0",
"ecosystem": "go"
},
{
"name": "github.com/charithe/durationcheck",
"direct": false,
"version": "v0.0.11",
"ecosystem": "go"
},
{
"name": "github.com/charmbracelet/colorprofile",
"direct": false,
"version": "v0.4.3",
"ecosystem": "go"
},
{
"name": "github.com/charmbracelet/ultraviolet",
"direct": false,
"version": "v0.0.0-20251205161215-1948445e3318",
"ecosystem": "go"
},
{
"name": "github.com/charmbracelet/x/ansi",
"direct": false,
"version": "v0.11.7",
"ecosystem": "go"
},
{
"name": "github.com/charmbracelet/x/term",
"direct": false,
"version": "v0.2.2",
"ecosystem": "go"
},
{
"name": "github.com/charmbracelet/x/termios",
"direct": false,
"version": "v0.1.1",
"ecosystem": "go"
},
{
"name": "github.com/charmbracelet/x/windows",
"direct": false,
"version": "v0.2.2",
"ecosystem": "go"
},
{
"name": "github.com/ckaznocha/intrange",
"direct": false,
"version": "v0.3.1",
"ecosystem": "go"
},
{
"name": "github.com/clickhouse/clickhouse-go-linter",
"direct": false,
"version": "v1.2.0",
"ecosystem": "go"
},
{
"name": "github.com/clipperhouse/displaywidth",
"direct": false,
"version": "v0.11.0",
"ecosystem": "go"
},
{
"name": "github.com/clipperhouse/uax29/v2",
"direct": false,
"version": "v2.7.0",
"ecosystem": "go"
},
{
"name": "github.com/cloudevents/sdk-go/sql/v2",
"direct": false,
"version": "v2.15.2",
"ecosystem": "go"
},
{
"name": "github.com/crossplane/upjet/v2",
"direct": false,
"version": "v2.0.1-0.20251009193737-0b7f640373c8",
"ecosystem": "go"
},
{
"name": "github.com/curioswitch/go-reassign",
"direct": false,
"version": "v0.3.0",
"ecosystem": "go"
},
{
"name": "github.com/daixiang0/gci",
"direct": false,
"version": "v0.13.7",
"ecosystem": "go"
},
{
"name": "github.com/dave/dst",
"direct": false,
"version": "v0.27.3",
"ecosystem": "go"
},
{
"name": "github.com/davecgh/go-spew",
"direct": false,
"version": "v1.1.2-0.20180830191138-d8f796af33cc",
"ecosystem": "go"
},
{
"name": "github.com/denis-tingaikin/go-header",
"direct": false,
"version": "v0.5.0",
"ecosystem": "go"
},
{
"name": "github.com/djarvur/go-err113",
"direct": false,
"version": "v0.1.1",
"ecosystem": "go"
},
{
"name": "github.com/dlclark/regexp2",
"direct": false,
"version": "v1.12.0",
"ecosystem": "go"
},
{
"name": "github.com/eapache/go-resiliency",
"direct": false,
"version": "v1.7.0",
"ecosystem": "go"
},
{
"name": "github.com/eapache/queue",
"direct": false,
"version": "v1.1.0",
"ecosystem": "go"
},
{
"name": "github.com/emicklei/go-restful/v3",
"direct": false,
"version": "v3.13.0",
"ecosystem": "go"
},
{
"name": "github.com/ettle/strcase",
"direct": false,
"version": "v0.2.0",
"ecosystem": "go"
},
{
"name": "github.com/evanphx/json-patch",
"direct": false,
"version": "v5.9.11+incompatible",
"ecosystem": "go"
},
{
"name": "github.com/evanphx/json-patch/v5",
"direct": false,
"version": "v5.9.11",
"ecosystem": "go"
},
{
"name": "github.com/fatih/camelcase",
"direct": false,
"version": "v1.0.0",
"ecosystem": "go"
},
{
"name": "github.com/fatih/color",
"direct": false,
"version": "v1.19.0",
"ecosystem": "go"
},
{
"name": "github.com/fatih/structtag",
"direct": false,
"version": "v1.2.0",
"ecosystem": "go"
},
{
"name": "github.com/felixge/httpsnoop",
"direct": false,
"version": "v1.0.4",
"ecosystem": "go"
},
{
"name": "github.com/firefart/nonamedreturns",
"direct": false,
"version": "v1.0.6",
"ecosystem": "go"
},
{
"name": "github.com/fsnotify/fsnotify",
"direct": false,
"version": "v1.9.0",
"ecosystem": "go"
},
{
"name": "github.com/fxamacker/cbor/v2",
"direct": false,
"version": "v2.9.0",
"ecosystem": "go"
},
{
"name": "github.com/fzipp/gocyclo",
"direct": false,
"version": "v0.6.0",
"ecosystem": "go"
},
{
"name": "github.com/ghostiam/protogetter",
"direct": false,
"version": "v0.3.20",
"ecosystem": "go"
},
{
"name": "github.com/go-critic/go-critic",
"direct": false,
"version": "v0.14.3",
"ecosystem": "go"
},
{
"name": "github.com/go-logr/stdr",
"direct": false,
"version": "v1.2.2",
"ecosystem": "go"
},
{
"name": "github.com/go-openapi/jsonpointer",
"direct": false,
"version": "v0.22.4",
"ecosystem": "go"
},
{
"name": "github.com/go-openapi/jsonreference",
"direct": false,
"version": "v0.21.4",
"ecosystem": "go"
},
{
"name": "github.com/go-openapi/swag",
"direct": false,
"version": "v0.25.4",
"ecosystem": "go"
},
{
"name": "github.com/go-openapi/swag/cmdutils",
"direct": false,
"version": "v0.25.4",
"ecosystem": "go"
},
{
"name": "github.com/go-openapi/swag/conv",
"direct": false,
"version": "v0.25.4",
"ecosystem": "go"
},
{
"name": "github.com/go-openapi/swag/fileutils",
"direct": false,
"version": "v0.25.4",
"ecosystem": "go"
},
{
"name": "github.com/go-openapi/swag/jsonname",
"direct": false,
"version": "v0.25.4",
"ecosystem": "go"
},
{
"name": "github.com/go-openapi/swag/jsonutils",
"direct": false,
"version": "v0.25.4",
"ecosystem": "go"
},
{
"name": "github.com/go-openapi/swag/loading",
"direct": false,
"version": "v0.25.4",
"ecosystem": "go"
},
{
"name": "github.com/go-openapi/swag/mangling",
"direct": false,
"version": "v0.25.4",
"ecosystem": "go"
},
{
"name": "github.com/go-openapi/swag/netutils",
"direct": false,
"version": "v0.25.4",
"ecosystem": "go"
},
{
"name": "github.com/go-openapi/swag/stringutils",
"direct": false,
"version": "v0.25.4",
"ecosystem": "go"
},
{
"name": "github.com/go-openapi/swag/typeutils",
"direct": false,
"version": "v0.25.4",
"ecosystem": "go"
},
{
"name": "github.com/go-openapi/swag/yamlutils",
"direct": false,
"version": "v0.25.4",
"ecosystem": "go"
},
{
"name": "github.com/go-task/slim-sprig/v3",
"direct": false,
"version": "v3.0.0",
"ecosystem": "go"
},
{
"name": "github.com/go-toolsmith/astcast",
"direct": false,
"version": "v1.1.0",
"ecosystem": "go"
},
{
"name": "github.com/go-toolsmith/astcopy",
"direct": false,
"version": "v1.1.0",
"ecosystem": "go"
},
{
"name": "github.com/go-toolsmith/astequal",
"direct": false,
"version": "v1.2.0",
"ecosystem": "go"
},
{
"name": "github.com/go-toolsmith/astfmt",
"direct": false,
"version": "v1.1.0",
"ecosystem": "go"
},
{
"name": "github.com/go-toolsmith/astp",
"direct": false,
"version": "v1.1.0",
"ecosystem": "go"
},
{
"name": "github.com/go-toolsmith/strparse",
"direct": false,
"version": "v1.1.0",
"ecosystem": "go"
},
{
"name": "github.com/go-toolsmith/typep",
"direct": false,
"version": "v1.1.0",
"ecosystem": "go"
},
{
"name": "github.com/go-viper/mapstructure/v2",
"direct": false,
"version": "v2.5.0",
"ecosystem": "go"
},
{
"name": "github.com/go-xmlfmt/xmlfmt",
"direct": false,
"version": "v1.1.3",
"ecosystem": "go"
},
{
"name": "github.com/gobuffalo/flect",
"direct": false,
"version": "v1.0.3",
"ecosystem": "go"
},
{
"name": "github.com/gobwas/glob",
"direct": false,
"version": "v0.2.3",
"ecosystem": "go"
},
{
"name": "github.com/godoc-lint/godoc-lint",
"direct": false,
"version": "v0.11.2",
"ecosystem": "go"
},
{
"name": "github.com/gofrs/flock",
"direct": false,
"version": "v0.13.0",
"ecosystem": "go"
},
{
"name": "github.com/gogo/protobuf",
"direct": false,
"version": "v1.3.2",
"ecosystem": "go"
},
{
"name": "github.com/golang/groupcache",
"direct": false,
"version": "v0.0.0-20241129210726-2c02b8208cf8",
"ecosystem": "go"
},
{
"name": "github.com/golang/protobuf",
"direct": false,
"version": "v1.5.4",
"ecosystem": "go"
},
{
"name": "github.com/golangci/asciicheck",
"direct": false,
"version": "v0.5.0",
"ecosystem": "go"
},
{
"name": "github.com/golangci/dupl",
"direct": false,
"version": "v0.0.0-20260401084720-c99c5cf5c202",
"ecosystem": "go"
},
{
"name": "github.com/golangci/go-printf-func-name",
"direct": false,
"version": "v0.1.1",
"ecosystem": "go"
},
{
"name": "github.com/golangci/gofmt",
"direct": false,
"version": "v0.0.0-20250106114630-d62b90e6713d",
"ecosystem": "go"
},
{
"name": "github.com/golangci/golangci-lint/v2",
"direct": false,
"version": "v2.12.2",
"ecosystem": "go"
},
{
"name": "github.com/golangci/golines",
"direct": false,
"version": "v0.15.0",
"ecosystem": "go"
},
{
"name": "github.com/golangci/misspell",
"direct": false,
"version": "v0.8.0",
"ecosystem": "go"
},
{
"name": "github.com/golangci/plugin-module-register",
"direct": false,
"version": "v0.1.2",
"ecosystem": "go"
},
{
"name": "github.com/golangci/revgrep",
"direct": false,
"version": "v0.8.0",
"ecosystem": "go"
},
{
"name": "github.com/golangci/rowserrcheck",
"direct": false,
"version": "v0.0.0-20260419091836-c5f79b8a11ba",
"ecosystem": "go"
},
{
"name": "github.com/golangci/swaggoswag",
"direct": false,
"version": "v0.0.0-20250504205917-77f2aca3143e",
"ecosystem": "go"
},
{
"name": "github.com/golangci/unconvert",
"direct": false,
"version": "v0.0.0-20250410112200-a129a6e6413e",
"ecosystem": "go"
},
{
"name": "github.com/google/cel-go",
"direct": false,
"version": "v0.26.1",
"ecosystem": "go"
},
{
"name": "github.com/google/gnostic-models",
"direct": false,
"version": "v0.7.1",
"ecosystem": "go"
},
{
"name": "github.com/google/go-cmp",
"direct": false,
"version": "v0.7.0",
"ecosystem": "go"
},
{
"name": "github.com/google/go-containerregistry",
"direct": false,
"version": "v0.20.6",
"ecosystem": "go"
},
{
"name": "github.com/google/pprof",
"direct": false,
"version": "v0.0.0-20260402051712-545e8a4df936",
"ecosystem": "go"
},
{
"name": "github.com/google/uuid",
"direct": false,
"version": "v1.6.0",
"ecosystem": "go"
},
{
"name": "github.com/gordonklaus/ineffassign",
"direct": false,
"version": "v0.2.0",
"ecosystem": "go"
},
{
"name": "github.com/gostaticanalysis/analysisutil",
"direct": false,
"version": "v0.7.1",
"ecosystem": "go"
},
{
"name": "github.com/gostaticanalysis/comment",
"direct": false,
"version": "v1.5.0",
"ecosystem": "go"
},
{
"name": "github.com/gostaticanalysis/forcetypeassert",
"direct": false,
"version": "v0.2.0",
"ecosystem": "go"
},
{
"name": "github.com/gostaticanalysis/nilerr",
"direct": false,
"version": "v0.1.2",
"ecosystem": "go"
},
{
"name": "github.com/grpc-ecosystem/grpc-gateway/v2",
"direct": false,
"version": "v2.28.0",
"ecosystem": "go"
},
{
"name": "github.com/hashicorp/go-cty",
"direct": false,
"version": "v1.5.0",
"ecosystem": "go"
},
{
"name": "github.com/hashicorp/go-hclog",
"direct": false,
"version": "v1.6.3",
"ecosystem": "go"
},
{
"name": "github.com/hashicorp/go-immutable-radix/v2",
"direct": false,
"version": "v2.1.0",
"ecosystem": "go"
},
{
"name": "github.com/hashicorp/go-uuid",
"direct": false,
"version": "v1.0.3",
"ecosystem": "go"
},
{
"name": "github.com/hashicorp/go-version",
"direct": false,
"version": "v1.9.0",
"ecosystem": "go"
},
{
"name": "github.com/hashicorp/golang-lru",
"direct": false,
"version": "v1.0.2",
"ecosystem": "go"
},
{
"name": "github.com/hashicorp/golang-lru/v2",
"direct": false,
"version": "v2.0.7",
"ecosystem": "go"
},
{
"name": "github.com/hashicorp/hcl",
"direct": false,
"version": "v1.0.1-vault-7",
"ecosystem": "go"
},
{
"name": "github.com/hashicorp/hcl/v2",
"direct": false,
"version": "v2.24.0",
"ecosystem": "go"
},
{
"name": "github.com/hashicorp/logutils",
"direct": false,
"version": "v1.0.0",
"ecosystem": "go"
},
{
"name": "github.com/hashicorp/terraform-json",
"direct": false,
"version": "v0.27.2",
"ecosystem": "go"
},
{
"name": "github.com/hashicorp/terraform-plugin-framework",
"direct": false,
"version": "v1.16.1",
"ecosystem": "go"
},
{
"name": "github.com/hashicorp/terraform-plugin-go",
"direct": false,
"version": "v0.29.0",
"ecosystem": "go"
},
{
"name": "github.com/hashicorp/terraform-plugin-log",
"direct": false,
"version": "v0.9.0",
"ecosystem": "go"
},
{
"name": "github.com/hashicorp/terraform-plugin-sdk/v2",
"direct": false,
"version": "v2.38.1",
"ecosystem": "go"
},
{
"name": "github.com/hexops/gotextdiff",
"direct": false,
"version": "v1.0.3",
"ecosystem": "go"
},
{
"name": "github.com/iancoleman/orderedmap",
"direct": false,
"version": "v0.3.0",
"ecosystem": "go"
},
{
"name": "github.com/iancoleman/strcase",
"direct": false,
"version": "v0.3.0",
"ecosystem": "go"
},
{
"name": "github.com/ibm/sarama",
"direct": false,
"version": "v1.47.0",
"ecosystem": "go"
},
{
"name": "github.com/inconshreveable/mousetrap",
"direct": false,
"version": "v1.1.0",
"ecosystem": "go"
},
{
"name": "github.com/jcmturner/aescts/v2",
"direct": false,
"version": "v2.0.0",
"ecosystem": "go"
},
{
"name": "github.com/jcmturner/dnsutils/v2",
"direct": false,
"version": "v2.0.0",
"ecosystem": "go"
},
{
"name": "github.com/jcmturner/gofork",
"direct": false,
"version": "v1.7.6",
"ecosystem": "go"
},
{
"name": "github.com/jcmturner/gokrb5/v8",
"direct": false,
"version": "v8.4.4",
"ecosystem": "go"
},
{
"name": "github.com/jcmturner/rpc/v2",
"direct": false,
"version": "v2.0.3",
"ecosystem": "go"
},
{
"name": "github.com/jgautheron/goconst",
"direct": false,
"version": "v1.10.0",
"ecosystem": "go"
},
{
"name": "github.com/jjti/go-spancheck",
"direct": false,
"version": "v0.6.5",
"ecosystem": "go"
},
{
"name": "github.com/json-iterator/go",
"direct": false,
"version": "v1.1.12",
"ecosystem": "go"
},
{
"name": "github.com/julz/importas",
"direct": false,
"version": "v0.2.0",
"ecosystem": "go"
},
{
"name": "github.com/karamaru-alpha/copyloopvar",
"direct": false,
"version": "v1.2.2",
"ecosystem": "go"
},
{
"name": "github.com/kelseyhightower/envconfig",
"direct": false,
"version": "v1.4.0",
"ecosystem": "go"
},
{
"name": "github.com/kisielk/errcheck",
"direct": false,
"version": "v1.10.0",
"ecosystem": "go"
},
{
"name": "github.com/kkhaike/contextcheck",
"direct": false,
"version": "v1.1.6",
"ecosystem": "go"
},
{
"name": "github.com/klauspost/compress",
"direct": false,
"version": "v1.18.4",
"ecosystem": "go"
},
{
"name": "github.com/kube-logging/logging-operator",
"direct": false,
"version": "v0.0.0-20260410185345-f62b93e09011",
"ecosystem": "go"
},
{
"name": "github.com/kulti/thelper",
"direct": false,
"version": "v0.7.1",
"ecosystem": "go"
},
{
"name": "github.com/kunwardeep/paralleltest",
"direct": false,
"version": "v1.0.15",
"ecosystem": "go"
},
{
"name": "github.com/lasiar/canonicalheader",
"direct": false,
"version": "v1.1.2",
"ecosystem": "go"
},
{
"name": "github.com/ldez/exptostd",
"direct": false,
"version": "v0.4.5",
"ecosystem": "go"
},
{
"name": "github.com/ldez/gomoddirectives",
"direct": false,
"version": "v0.8.0",
"ecosystem": "go"
},
{
"name": "github.com/ldez/grignotin",
"direct": false,
"version": "v0.10.1",
"ecosystem": "go"
},
{
"name": "github.com/ldez/structtags",
"direct": false,
"version": "v0.6.1",
"ecosystem": "go"
},
{
"name": "github.com/ldez/tagliatelle",
"direct": false,
"version": "v0.7.2",
"ecosystem": "go"
},
{
"name": "github.com/ldez/usetesting",
"direct": false,
"version": "v0.5.0",
"ecosystem": "go"
},
{
"name": "github.com/leonklingele/grouper",
"direct": false,
"version": "v1.1.2",
"ecosystem": "go"
},
{
"name": "github.com/lucasb-eyer/go-colorful",
"direct": false,
"version": "v1.4.0",
"ecosystem": "go"
},
{
"name": "github.com/macabu/inamedparam",
"direct": false,
"version": "v0.2.0",
"ecosystem": "go"
},
{
"name": "github.com/magiconair/properties",
"direct": false,
"version": "v1.8.6",
"ecosystem": "go"
},
{
"name": "github.com/manuelarte/embeddedstructfieldcheck",
"direct": false,
"version": "v0.4.0",
"ecosystem": "go"
},
{
"name": "github.com/manuelarte/funcorder",
"direct": false,
"version": "v0.6.0",
"ecosystem": "go"
},
{
"name": "github.com/maratori/testableexamples",
"direct": false,
"version": "v1.0.1",
"ecosystem": "go"
},
{
"name": "github.com/maratori/testpackage",
"direct": false,
"version": "v1.1.2",
"ecosystem": "go"
},
{
"name": "github.com/masterminds/semver/v3",
"direct": false,
"version": "v3.5.0",
"ecosystem": "go"
},
{
"name": "github.com/matoous/godox",
"direct": false,
"version": "v1.1.0",
"ecosystem": "go"
},
{
"name": "github.com/mattn/go-colorable",
"direct": false,
"version": "v0.1.14",
"ecosystem": "go"
},
{
"name": "github.com/mattn/go-isatty",
"direct": false,
"version": "v0.0.20",
"ecosystem": "go"
},
{
"name": "github.com/mattn/go-runewidth",
"direct": false,
"version": "v0.0.23",
"ecosystem": "go"
},
{
"name": "github.com/mgechev/revive",
"direct": false,
"version": "v1.15.0",
"ecosystem": "go"
},
{
"name": "github.com/mirrexone/unqueryvet",
"direct": false,
"version": "v1.5.4",
"ecosystem": "go"
},
{
"name": "github.com/mitchellh/copystructure",
"direct": false,
"version": "v1.2.0",
"ecosystem": "go"
},
{
"name": "github.com/mitchellh/go-homedir",
"direct": false,
"version": "v1.1.0",
"ecosystem": "go"
},
{
"name": "github.com/mitchellh/go-testing-interface",
"direct": false,
"version": "v1.14.1",
"ecosystem": "go"
},
{
"name": "github.com/mitchellh/go-wordwrap",
"direct": false,
"version": "v1.0.1",
"ecosystem": "go"
},
{
"name": "github.com/mitchellh/mapstructure",
"direct": false,
"version": "v1.5.0",
"ecosystem": "go"
},
{
"name": "github.com/mitchellh/reflectwalk",
"direct": false,
"version": "v1.0.2",
"ecosystem": "go"
},
{
"name": "github.com/modern-go/concurrent",
"direct": false,
"version": "v0.0.0-20180306012644-bacd9c7ef1dd",
"ecosystem": "go"
},
{
"name": "github.com/modern-go/reflect2",
"direct": false,
"version": "v1.0.3-0.20250322232337-35a7c28c31ee",
"ecosystem": "go"
},
{
"name": "github.com/moricho/tparallel",
"direct": false,
"version": "v0.3.2",
"ecosystem": "go"
},
{
"name": "github.com/muesli/cancelreader",
"direct": false,
"version": "v0.2.2",
"ecosystem": "go"
},
{
"name": "github.com/munnerz/goautoneg",
"direct": false,
"version": "v0.0.0-20191010083416-a7dc8b61c822",
"ecosystem": "go"
},
{
"name": "github.com/nakabonne/nestif",
"direct": false,
"version": "v0.3.1",
"ecosystem": "go"
},
{
"name": "github.com/nishanths/exhaustive",
"direct": false,
"version": "v0.12.0",
"ecosystem": "go"
},
{
"name": "github.com/nishanths/predeclared",
"direct": false,
"version": "v0.2.2",
"ecosystem": "go"
},
{
"name": "github.com/nunnatsa/ginkgolinter",
"direct": false,
"version": "v0.23.0",
"ecosystem": "go"
},
{
"name": "github.com/opencontainers/go-digest",
"direct": false,
"version": "v1.0.0",
"ecosystem": "go"
},
{
"name": "github.com/openpeedeep/depguard/v2",
"direct": false,
"version": "v2.2.1",
"ecosystem": "go"
},
{
"name": "github.com/pelletier/go-toml",
"direct": false,
"version": "v1.9.5",
"ecosystem": "go"
},
{
"name": "github.com/pelletier/go-toml/v2",
"direct": false,
"version": "v2.3.1",
"ecosystem": "go"
},
{
"name": "github.com/pierrec/lz4/v4",
"direct": false,
"version": "v4.1.25",
"ecosystem": "go"
},
{
"name": "github.com/pkg/errors",
"direct": false,
"version": "v0.9.1",
"ecosystem": "go"
},
{
"name": "github.com/pmezard/go-difflib",
"direct": false,
"version": "v1.0.1-0.20181226105442-5d4384ee4fb2",
"ecosystem": "go"
},
{
"name": "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring",
"direct": false,
"version": "v0.90.1",
"ecosystem": "go"
},
{
"name": "github.com/prometheus/client_golang",
"direct": false,
"version": "v1.23.2",
"ecosystem": "go"
},
{
"name": "github.com/prometheus/client_model",
"direct": false,
"version": "v0.6.2",
"ecosystem": "go"
},
{
"name": "github.com/prometheus/common",
"direct": false,
"version": "v0.67.5",
"ecosystem": "go"
},
{
"name": "github.com/prometheus/procfs",
"direct": false,
"version": "v0.20.1",
"ecosystem": "go"
},
{
"name": "github.com/quasilyte/go-ruleguard",
"direct": false,
"version": "v0.4.5",
"ecosystem": "go"
},
{
"name": "github.com/quasilyte/go-ruleguard/dsl",
"direct": false,
"version": "v0.3.23",
"ecosystem": "go"
},
{
"name": "github.com/quasilyte/gogrep",
"direct": false,
"version": "v0.5.0",
"ecosystem": "go"
},
{
"name": "github.com/quasilyte/regex/syntax",
"direct": false,
"version": "v0.0.0-20210819130434-b3f0c404a727",
"ecosystem": "go"
},
{
"name": "github.com/quasilyte/stdinfo",
"direct": false,
"version": "v0.0.0-20220114132959-f7386bf02567",
"ecosystem": "go"
},
{
"name": "github.com/raeperd/recvcheck",
"direct": false,
"version": "v0.2.0",
"ecosystem": "go"
},
{
"name": "github.com/rcrowley/go-metrics",
"direct": false,
"version": "v0.0.0-20250401214520-65e299d6c5c9",
"ecosystem": "go"
},
{
"name": "github.com/rickb777/date",
"direct": false,
"version": "v1.14.1",
"ecosystem": "go"
},
{
"name": "github.com/rickb777/plural",
"direct": false,
"version": "v1.2.2",
"ecosystem": "go"
},
{
"name": "github.com/rivo/uniseg",
"direct": false,
"version": "v0.4.7",
"ecosystem": "go"
},
{
"name": "github.com/robfig/cron/v3",
"direct": false,
"version": "v3.0.1",
"ecosystem": "go"
},
{
"name": "github.com/rogpeppe/go-internal",
"direct": false,
"version": "v1.14.1",
"ecosystem": "go"
},
{
"name": "github.com/ryancurrah/gomodguard",
"direct": false,
"version": "v1.4.1",
"ecosystem": "go"
},
{
"name": "github.com/ryancurrah/gomodguard/v2",
"direct": false,
"version": "v2.1.3",
"ecosystem": "go"
},
{
"name": "github.com/ryanrolds/sqlclosecheck",
"direct": false,
"version": "v0.6.0",
"ecosystem": "go"
},
{
"name": "github.com/sanposhiho/wastedassign/v2",
"direct": false,
"version": "v2.1.0",
"ecosystem": "go"
},
{
"name": "github.com/santhosh-tekuri/jsonschema/v6",
"direct": false,
"version": "v6.0.2",
"ecosystem": "go"
},
{
"name": "github.com/sashamelentyev/interfacebloat",
"direct": false,
"version": "v1.1.0",
"ecosystem": "go"
},
{
"name": "github.com/sashamelentyev/usestdlibvars",
"direct": false,
"version": "v1.29.0",
"ecosystem": "go"
},
{
"name": "github.com/securego/gosec/v2",
"direct": false,
"version": "v2.26.1",
"ecosystem": "go"
},
{
"name": "github.com/sirupsen/logrus",
"direct": false,
"version": "v1.9.4",
"ecosystem": "go"
},
{
"name": "github.com/sivchari/containedctx",
"direct": false,
"version": "v1.0.3",
"ecosystem": "go"
},
{
"name": "github.com/sonatard/noctx",
"direct": false,
"version": "v0.5.1",
"ecosystem": "go"
},
{
"name": "github.com/sourcegraph/go-diff",
"direct": false,
"version": "v0.8.0",
"ecosystem": "go"
},
{
"name": "github.com/spf13/afero",
"direct": false,
"version": "v1.15.0",
"ecosystem": "go"
},
{
"name": "github.com/spf13/cast",
"direct": false,
"version": "v1.10.0",
"ecosystem": "go"
},
{
"name": "github.com/spf13/cobra",
"direct": false,
"version": "v1.10.2",
"ecosystem": "go"
},
{
"name": "github.com/spf13/jwalterweatherman",
"direct": false,
"version": "v1.1.0",
"ecosystem": "go"
},
{
"name": "github.com/spf13/pflag",
"direct": false,
"version": "v1.0.10",
"ecosystem": "go"
},
{
"name": "github.com/spf13/viper",
"direct": false,
"version": "v1.12.0",
"ecosystem": "go"
},
{
"name": "github.com/ssgreg/nlreturn/v2",
"direct": false,
"version": "v2.2.1",
"ecosystem": "go"
},
{
"name": "github.com/stbenjam/no-sprintf-host-port",
"direct": false,
"version": "v0.3.1",
"ecosystem": "go"
},
{
"name": "github.com/stoewer/go-strcase",
"direct": false,
"version": "v1.3.1",
"ecosystem": "go"
},
{
"name": "github.com/stretchr/objx",
"direct": false,
"version": "v0.5.2",
"ecosystem": "go"
},
{
"name": "github.com/subosito/gotenv",
"direct": false,
"version": "v1.4.1",
"ecosystem": "go"
},
{
"name": "github.com/tetafro/godot",
"direct": false,
"version": "v1.5.6",
"ecosystem": "go"
},
{
"name": "github.com/timakin/bodyclose",
"direct": false,
"version": "v0.0.0-20260129054331-73d1f95b84b4",
"ecosystem": "go"
},
{
"name": "github.com/timonwong/loggercheck",
"direct": false,
"version": "v0.11.0",
"ecosystem": "go"
},
{
"name": "github.com/tmccombs/hcl2json",
"direct": false,
"version": "v0.6.8",
"ecosystem": "go"
},
{
"name": "github.com/tomarrell/wrapcheck/v2",
"direct": false,
"version": "v2.12.0",
"ecosystem": "go"
},
{
"name": "github.com/tommy-muehle/go-mnd/v2",
"direct": false,
"version": "v2.5.1",
"ecosystem": "go"
},
{
"name": "github.com/ultraware/funlen",
"direct": false,
"version": "v0.2.0",
"ecosystem": "go"
},
{
"name": "github.com/ultraware/whitespace",
"direct": false,
"version": "v0.2.0",
"ecosystem": "go"
},
{
"name": "github.com/uudashr/gocognit",
"direct": false,
"version": "v1.2.1",
"ecosystem": "go"
},
{
"name": "github.com/uudashr/iface",
"direct": false,
"version": "v1.4.2",
"ecosystem": "go"
},
{
"name": "github.com/vmihailenco/msgpack",
"direct": false,
"version": "v4.0.4+incompatible",
"ecosystem": "go"
},
{
"name": "github.com/vmihailenco/msgpack/v5",
"direct": false,
"version": "v5.4.1",
"ecosystem": "go"
},
{
"name": "github.com/vmihailenco/tagparser/v2",
"direct": false,
"version": "v2.0.0",
"ecosystem": "go"
},
{
"name": "github.com/x448/float16",
"direct": false,
"version": "v0.8.4",
"ecosystem": "go"
},
{
"name": "github.com/xdg-go/pbkdf2",
"direct": false,
"version": "v1.0.0",
"ecosystem": "go"
},
{
"name": "github.com/xdg-go/scram",
"direct": false,
"version": "v1.1.2",
"ecosystem": "go"
},
{
"name": "github.com/xdg-go/stringprep",
"direct": false,
"version": "v1.0.4",
"ecosystem": "go"
},
{
"name": "github.com/xen0n/gosmopolitan",
"direct": false,
"version": "v1.3.0",
"ecosystem": "go"
},
{
"name": "github.com/xo/terminfo",
"direct": false,
"version": "v0.0.0-20220910002029-abceb7e1c41e",
"ecosystem": "go"
},
{
"name": "github.com/yagipy/maintidx",
"direct": false,
"version": "v1.0.0",
"ecosystem": "go"
},
{
"name": "github.com/yeya24/promlinter",
"direct": false,
"version": "v0.3.0",
"ecosystem": "go"
},
{
"name": "github.com/ykadowak/zerologlint",
"direct": false,
"version": "v0.1.5",
"ecosystem": "go"
},
{
"name": "github.com/yuin/goldmark",
"direct": false,
"version": "v1.7.13",
"ecosystem": "go"
},
{
"name": "github.com/zclconf/go-cty",
"direct": false,
"version": "v1.17.0",
"ecosystem": "go"
},
{
"name": "gitlab.com/bosi/decorder",
"direct": false,
"version": "v0.4.2",
"ecosystem": "go"
},
{
"name": "go-simpler.org/musttag",
"direct": false,
"version": "v0.14.0",
"ecosystem": "go"
},
{
"name": "go-simpler.org/sloglint",
"direct": false,
"version": "v0.12.0",
"ecosystem": "go"
},
{
"name": "go.augendre.info/arangolint",
"direct": false,
"version": "v0.4.0",
"ecosystem": "go"
},
{
"name": "go.augendre.info/fatcontext",
"direct": false,
"version": "v0.9.0",
"ecosystem": "go"
},
{
"name": "go.opentelemetry.io/auto/sdk",
"direct": false,
"version": "v1.2.1",
"ecosystem": "go"
},
{
"name": "go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp",
"direct": false,
"version": "v0.68.0",
"ecosystem": "go"
},
{
"name": "go.opentelemetry.io/otel",
"direct": false,
"version": "v1.43.0",
"ecosystem": "go"
},
{
"name": "go.opentelemetry.io/otel/exporters/otlp/otlptrace",
"direct": false,
"version": "v1.43.0",
"ecosystem": "go"
},
{
"name": "go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc",
"direct": false,
"version": "v1.43.0",
"ecosystem": "go"
},
{
"name": "go.opentelemetry.io/otel/metric",
"direct": false,
"version": "v1.43.0",
"ecosystem": "go"
},
{
"name": "go.opentelemetry.io/otel/sdk",
"direct": false,
"version": "v1.43.0",
"ecosystem": "go"
},
{
"name": "go.opentelemetry.io/otel/trace",
"direct": false,
"version": "v1.43.0",
"ecosystem": "go"
},
{
"name": "go.opentelemetry.io/proto/otlp",
"direct": false,
"version": "v1.10.0",
"ecosystem": "go"
},
{
"name": "go.uber.org/multierr",
"direct": false,
"version": "v1.11.0",
"ecosystem": "go"
},
{
"name": "go.yaml.in/yaml/v2",
"direct": false,
"version": "v2.4.4",
"ecosystem": "go"
},
{
"name": "go.yaml.in/yaml/v3",
"direct": false,
"version": "v3.0.4",
"ecosystem": "go"
},
{
"name": "golang.org/x/crypto",
"direct": false,
"version": "v0.53.0",
"ecosystem": "go"
},
{
"name": "golang.org/x/exp",
"direct": false,
"version": "v0.0.0-20260212183809-81e46e3db34a",
"ecosystem": "go"
},
{
"name": "golang.org/x/exp/typeparams",
"direct": false,
"version": "v0.0.0-20260209203927-2842357ff358",
"ecosystem": "go"
},
{
"name": "golang.org/x/mod",
"direct": false,
"version": "v0.36.0",
"ecosystem": "go"
},
{
"name": "golang.org/x/net",
"direct": false,
"version": "v0.56.0",
"ecosystem": "go"
},
{
"name": "golang.org/x/oauth2",
"direct": false,
"version": "v0.35.0",
"ecosystem": "go"
},
{
"name": "golang.org/x/sync",
"direct": false,
"version": "v0.21.0",
"ecosystem": "go"
},
{
"name": "golang.org/x/sys",
"direct": false,
"version": "v0.46.0",
"ecosystem": "go"
},
{
"name": "golang.org/x/term",
"direct": false,
"version": "v0.44.0",
"ecosystem": "go"
},
{
"name": "golang.org/x/text",
"direct": false,
"version": "v0.38.0",
"ecosystem": "go"
},
{
"name": "golang.org/x/time",
"direct": false,
"version": "v0.14.0",
"ecosystem": "go"
},
{
"name": "golang.org/x/tools",
"direct": false,
"version": "v0.45.0",
"ecosystem": "go"
},
{
"name": "gomodules.xyz/jsonpatch/v2",
"direct": false,
"version": "v2.5.0",
"ecosystem": "go"
},
{
"name": "google.golang.org/appengine",
"direct": false,
"version": "v1.6.8",
"ecosystem": "go"
},
{
"name": "google.golang.org/genproto/googleapis/api",
"direct": false,
"version": "v0.0.0-20260401024825-9d38bb4040a9",
"ecosystem": "go"
},
{
"name": "google.golang.org/genproto/googleapis/rpc",
"direct": false,
"version": "v0.0.0-20260401024825-9d38bb4040a9",
"ecosystem": "go"
},
{
"name": "google.golang.org/grpc",
"direct": false,
"version": "v1.80.0",
"ecosystem": "go"
},
{
"name": "google.golang.org/protobuf",
"direct": false,
"version": "v1.36.12-0.20260120151049-f2248ac996af",
"ecosystem": "go"
},
{
"name": "gopkg.in/evanphx/json-patch.v4",
"direct": false,
"version": "v4.13.0",
"ecosystem": "go"
},
{
"name": "gopkg.in/inf.v0",
"direct": false,
"version": "v0.9.1",
"ecosystem": "go"
},
{
"name": "gopkg.in/ini.v1",
"direct": false,
"version": "v1.67.0",
"ecosystem": "go"
},
{
"name": "gopkg.in/yaml.v2",
"direct": false,
"version": "v2.4.0",
"ecosystem": "go"
},
{
"name": "gopkg.in/yaml.v3",
"direct": false,
"version": "v3.0.1",
"ecosystem": "go"
},
{
"name": "honnef.co/go/tools",
"direct": false,
"version": "v0.7.0",
"ecosystem": "go"
},
{
"name": "k8s.io/apiextensions-apiserver",
"direct": false,
"version": "v0.36.0",
"ecosystem": "go"
},
{
"name": "k8s.io/apiserver",
"direct": false,
"version": "v0.36.0",
"ecosystem": "go"
},
{
"name": "k8s.io/code-generator",
"direct": false,
"version": "v0.36.0",
"ecosystem": "go"
},
{
"name": "k8s.io/component-base",
"direct": false,
"version": "v0.36.0",
"ecosystem": "go"
},
{
"name": "k8s.io/gengo/v2",
"direct": false,
"version": "v2.0.0-20251215205346-5ee0d033ba5b",
"ecosystem": "go"
},
{
"name": "k8s.io/klog/v2",
"direct": false,
"version": "v2.140.0",
"ecosystem": "go"
},
{
"name": "k8s.io/kube-openapi",
"direct": false,
"version": "v0.0.0-20260317180543-43fb72c5454a",
"ecosystem": "go"
},
{
"name": "k8s.io/streaming",
"direct": false,
"version": "v0.36.2",
"ecosystem": "go"
},
{
"name": "k8s.io/utils",
"direct": false,
"version": "v0.0.0-20260210185600-b8788abfbbc2",
"ecosystem": "go"
},
{
"name": "knative.dev/networking",
"direct": false,
"version": "v0.0.0-20260529061306-c8de379770b9",
"ecosystem": "go"
},
{
"name": "mvdan.cc/gofumpt",
"direct": false,
"version": "v0.9.2",
"ecosystem": "go"
},
{
"name": "mvdan.cc/unparam",
"direct": false,
"version": "v0.0.0-20251027182757-5beb8c8f8f15",
"ecosystem": "go"
},
{
"name": "sigs.k8s.io/apiserver-network-proxy/konnectivity-client",
"direct": false,
"version": "v0.34.0",
"ecosystem": "go"
},
{
"name": "sigs.k8s.io/controller-tools",
"direct": false,
"version": "v0.20.0",
"ecosystem": "go"
},
{
"name": "sigs.k8s.io/gateway-api",
"direct": false,
"version": "v1.5.0",
"ecosystem": "go"
},
{
"name": "sigs.k8s.io/json",
"direct": false,
"version": "v0.0.0-20250730193827-2d320260d730",
"ecosystem": "go"
},
{
"name": "sigs.k8s.io/randfill",
"direct": false,
"version": "v1.0.0",
"ecosystem": "go"
},
{
"name": "sigs.k8s.io/structured-merge-diff/v6",
"direct": false,
"version": "v6.3.2",
"ecosystem": "go"
},
{
"name": "sigs.k8s.io/yaml",
"direct": false,
"version": "v1.6.0",
"ecosystem": "go"
}
],
"collected": true,
"truncated": false,
"total_count": 383,
"direct_count": 23,
"indirect_count": 360
}
},
"maintainership": {
"issues": {
"open_prs": 5,
"merged_prs": 428,
"open_issues": 25,
"closed_ratio": 0.764,
"closed_issues": 81,
"closed_unmerged_prs": 131
},
"bus_factor": 2,
"bot_contributors": 2,
"top_contributors": [
{
"type": "User",
"login": "sbahar619",
"commits": 168,
"avatar_url": "https://avatars.githubusercontent.com/u/110476642?v=4"
},
{
"type": "User",
"login": "mzeevi",
"commits": 67,
"avatar_url": "https://avatars.githubusercontent.com/u/8266172?v=4"
},
{
"type": "User",
"login": "dvirgilad",
"commits": 57,
"avatar_url": "https://avatars.githubusercontent.com/u/74469313?v=4"
},
{
"type": "User",
"login": "sahar2339",
"commits": 48,
"avatar_url": "https://avatars.githubusercontent.com/u/71208860?v=4"
},
{
"type": "User",
"login": "fran2810",
"commits": 33,
"avatar_url": "https://avatars.githubusercontent.com/u/49525820?v=4"
},
{
"type": "User",
"login": "omer5yerushalmi",
"commits": 17,
"avatar_url": "https://avatars.githubusercontent.com/u/42209304?v=4"
},
{
"type": "User",
"login": "liadlauber",
"commits": 14,
"avatar_url": "https://avatars.githubusercontent.com/u/79452896?v=4"
},
{
"type": "User",
"login": "omerbd21",
"commits": 12,
"avatar_url": "https://avatars.githubusercontent.com/u/68389553?v=4"
},
{
"type": "User",
"login": "elmatuso",
"commits": 4,
"avatar_url": "https://avatars.githubusercontent.com/u/213805951?v=4"
},
{
"type": "User",
"login": "TalDebi",
"commits": 3,
"avatar_url": "https://avatars.githubusercontent.com/u/157988778?v=4"
}
],
"contributors_sampled": 13,
"top_contributor_share": 0.394
},
"quality_signals": {
"has_ci": true,
"has_tests": true,
"ci_workflows": [
"lint.yaml",
"post-merge.yaml",
"pr.yaml",
"release.yaml"
],
"has_docs_dir": true,
"linter_configs": [
".golangci.yml"
],
"has_editorconfig": false,
"has_linter_config": true,
"has_precommit_config": false
},
"security_signals": {
"lockfiles": [
"go.sum"
],
"scorecard": {
"checks": [
{
"name": "Binary-Artifacts",
"score": 10,
"reason": "no binaries found in the repo",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#binary-artifacts"
},
{
"name": "Branch-Protection",
"score": null,
"reason": "internal error: error during branchesHandler.setup: internal error: some github tokens can't read classic branch protection rules: https://github.com/ossf/scorecard-action/blob/main/docs/authentication/fine-grained-auth-token.md",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#branch-protection"
},
{
"name": "CI-Tests",
"score": 10,
"reason": "16 out of 16 merged PRs checked by a CI test -- score normalized to 10",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#ci-tests"
},
{
"name": "CII-Best-Practices",
"score": 0,
"reason": "no effort to earn an OpenSSF best practices badge detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#cii-best-practices"
},
{
"name": "Code-Review",
"score": 10,
"reason": "all changesets reviewed",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#code-review"
},
{
"name": "Contributors",
"score": 3,
"reason": "project has 1 contributing companies or organizations -- score normalized to 3",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#contributors"
},
{
"name": "Dangerous-Workflow",
"score": 10,
"reason": "no dangerous workflow patterns detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dangerous-workflow"
},
{
"name": "Dependency-Update-Tool",
"score": 10,
"reason": "update tool detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dependency-update-tool"
},
{
"name": "Fuzzing",
"score": 0,
"reason": "project is not fuzzed",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#fuzzing"
},
{
"name": "License",
"score": 10,
"reason": "license file detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#license"
},
{
"name": "Maintained",
"score": 10,
"reason": "30 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 10",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#maintained"
},
{
"name": "Packaging",
"score": 10,
"reason": "packaging workflow detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#packaging"
},
{
"name": "Pinned-Dependencies",
"score": 3,
"reason": "dependency not pinned by hash detected -- score normalized to 3",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#pinned-dependencies"
},
{
"name": "SAST",
"score": 0,
"reason": "SAST tool is not run on all commits -- score normalized to 0",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#sast"
},
{
"name": "Security-Policy",
"score": 0,
"reason": "security policy file not detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#security-policy"
},
{
"name": "Signed-Releases",
"score": 0,
"reason": "Project has not signed or included provenance with any releases.",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#signed-releases"
},
{
"name": "Token-Permissions",
"score": 0,
"reason": "detected GitHub workflow tokens with excessive permissions",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#token-permissions"
},
{
"name": "Vulnerabilities",
"score": 4,
"reason": "6 existing vulnerabilities detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#vulnerabilities"
}
],
"commit": "7b47269ead074e3e81f5a3c3721b88cfb23e20c8",
"ran_at": "2026-07-26T01:17:47Z",
"aggregate_score": 5.7,
"scorecard_version": "v5.5.0"
},
"has_codeql_workflow": false,
"has_security_policy": false,
"has_dependabot_config": true
},
"contribution_flow": {
"collected": true,
"ci_last_run_at": "2026-07-25T20:32:58Z",
"oldest_open_prs": [
{
"number": 566,
"created_at": "2026-05-27T10:14:09Z",
"last_comment_at": "2026-06-15T06:55:37Z",
"last_comment_author": "dependabot"
},
{
"number": 585,
"created_at": "2026-06-03T11:09:57Z",
"last_comment_at": "2026-06-07T06:36:38Z",
"last_comment_author": "dvirgilad"
},
{
"number": 669,
"created_at": "2026-07-23T07:48:58Z",
"last_comment_at": "2026-07-23T07:49:02Z",
"last_comment_author": "dana-prow-ci"
},
{
"number": 670,
"created_at": "2026-07-23T08:41:28Z",
"last_comment_at": "2026-07-23T08:45:07Z",
"last_comment_author": "dana-prow-ci"
},
{
"number": 671,
"created_at": "2026-07-25T03:05:23Z",
"last_comment_at": "2026-07-25T20:27:42Z",
"last_comment_author": "dana-prow-ci"
}
],
"last_merged_pr_at": "2026-07-25T20:30:23Z",
"ci_last_conclusion": "SUCCESS",
"oldest_open_issues": [
{
"number": 248,
"created_at": "2024-11-21T14:06:37Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 321,
"created_at": "2025-11-02T07:57:29Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 478,
"created_at": "2026-05-05T09:47:43Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 489,
"created_at": "2026-05-10T07:23:33Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 498,
"created_at": "2026-05-13T13:31:38Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 500,
"created_at": "2026-05-13T13:32:36Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 501,
"created_at": "2026-05-13T13:32:41Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 502,
"created_at": "2026-05-13T13:33:44Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 504,
"created_at": "2026-05-13T13:34:48Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 505,
"created_at": "2026-05-13T13:34:54Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 506,
"created_at": "2026-05-13T13:35:36Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 507,
"created_at": "2026-05-13T13:35:53Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 508,
"created_at": "2026-05-13T13:36:57Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 509,
"created_at": "2026-05-13T13:37:02Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 513,
"created_at": "2026-05-13T13:39:07Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 518,
"created_at": "2026-05-13T13:41:34Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 519,
"created_at": "2026-05-13T13:41:42Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 522,
"created_at": "2026-05-13T13:42:21Z",
"last_comment_at": "2026-06-07T06:35:49Z",
"last_comment_author": "dana-prow-ci"
},
{
"number": 526,
"created_at": "2026-05-13T13:43:47Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 572,
"created_at": "2026-05-31T10:23:15Z",
"last_comment_at": null,
"last_comment_author": null
}
]
}
},
"config": {
"disabled_metrics": [],
"disabled_categories": [],
"disabled_components": {}
},
"source": {
"url": "https://github.com/dana-team/container-app-operator",
"host": "github.com",
"name": "container-app-operator",
"owner": "dana-team"
},
"metrics": {
"overall": {
"key": "overall",
"band": "good",
"name": "Overall health",
"note": null,
"notes": [],
"value": 70,
"inputs": {
"security": 66,
"vitality": 90,
"community": 36,
"governance": 71,
"engineering": 80
},
"components": []
},
"categories": [
{
"key": "vitality",
"band": "excellent",
"name": "Vitality",
"value": 90,
"weight": 0.22,
"metrics": [
{
"key": "development_activity",
"band": "excellent",
"name": "Development activity",
"note": null,
"notes": [],
"value": 90,
"inputs": {
"commits_last_year": 475,
"human_commit_share": 0.55,
"days_since_last_push": 0,
"active_weeks_last_year": 37
},
"components": [
{
"key": "push_recency",
"name": "Push recency",
"detail": "last push 0 days ago",
"points": 36,
"status": "met",
"details": [
{
"code": "push_recency",
"params": {
"days": 0
}
}
],
"max_points": 36
},
{
"key": "commit_cadence",
"name": "Commit cadence",
"detail": "37/52 weeks with commits",
"points": 25.6,
"status": "partial",
"details": [
{
"code": "commit_cadence_weeks",
"params": {
"weeks": 37
}
}
],
"max_points": 36
},
{
"key": "commit_volume",
"name": "Commit volume",
"detail": "475 commits in the last year",
"points": 18,
"status": "met",
"details": [
{
"code": "commits_last_year",
"params": {
"count": 475
}
}
],
"max_points": 18
},
{
"key": "openssf_scorecard_maintained",
"name": "OpenSSF Scorecard: Maintained",
"detail": "30 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 10",
"points": 10,
"status": "met",
"details": [],
"max_points": 10
}
]
},
{
"key": "release_discipline",
"band": "excellent",
"name": "Release discipline",
"note": null,
"notes": [],
"value": 90,
"inputs": {
"releases_count": 38,
"latest_release_tag": "v0.9.2",
"releases_from_tags": false,
"days_since_latest_release": 6,
"mean_days_between_releases": 9.1
},
"components": [
{
"key": "ships_releases",
"name": "Ships releases",
"detail": "38 releases published",
"points": 27,
"status": "met",
"details": [
{
"code": "releases_published",
"params": {
"count": 38
}
}
],
"max_points": 27
},
{
"key": "release_recency",
"name": "Release recency",
"detail": "latest release 6 days ago",
"points": 36,
"status": "met",
"details": [
{
"code": "release_recency",
"params": {
"days": 6
}
}
],
"max_points": 36
},
{
"key": "release_cadence",
"name": "Release cadence",
"detail": "a release every ~9.1 days",
"points": 27,
"status": "met",
"details": [
{
"code": "release_cadence",
"params": {
"gap": 9.1
}
}
],
"max_points": 27
},
{
"key": "openssf_scorecard_signed_releases",
"name": "OpenSSF Scorecard: Signed-Releases",
"detail": "Project has not signed or included provenance with any releases.",
"points": 0,
"status": "missed",
"details": [],
"max_points": 10
}
]
},
{
"key": "abandonment",
"band": "excellent",
"name": "Abandonment",
"note": null,
"notes": [],
"value": 100,
"inputs": {
"cap": null,
"state": "maintained",
"guards": [],
"signals": [],
"red_flag": false,
"multiplier_pct": 100,
"declared_reason": null,
"unverified_reason": null,
"unanswered_open_prs": null,
"unanswered_open_issues": null,
"days_since_last_merged_pr": null,
"days_since_last_human_commit": 2,
"days_since_last_human_commit_is_floor": false
},
"components": [
{
"key": "project_is_still_maintained",
"name": "Project is still maintained",
"detail": "last human commit 2 days ago",
"points": 100,
"status": "met",
"details": [
{
"code": "abandonment_maintained",
"params": {
"days": 2
}
}
],
"max_points": 100
}
]
}
],
"description": "Is the project alive — is code being written and are releases shipping?"
},
{
"key": "community",
"band": "at_risk",
"name": "Community & Adoption",
"value": 36,
"weight": 0.18,
"metrics": [
{
"key": "popularity",
"band": "critical",
"name": "Popularity & adoption",
"note": null,
"notes": [],
"value": 23,
"inputs": {
"forks": 12,
"stars": 9,
"watchers": 0,
"growth_state": "unverified",
"growth_factor_pct": 100,
"growth_unverified_reason": "no_history"
},
"components": [
{
"key": "stars",
"name": "Stars",
"detail": "9 stars",
"points": 14.6,
"status": "partial",
"details": [
{
"code": "stars",
"params": {
"count": 9
}
}
],
"max_points": 60
},
{
"key": "forks",
"name": "Forks",
"detail": "12 forks",
"points": 8.7,
"status": "partial",
"details": [
{
"code": "forks",
"params": {
"count": 12
}
}
],
"max_points": 25
},
{
"key": "watchers",
"name": "Watchers",
"detail": "0 watchers",
"points": 0,
"status": "missed",
"details": [
{
"code": "watchers",
"params": {
"count": 0
}
}
],
"max_points": 15
}
]
},
{
"key": "community_health",
"band": "moderate",
"name": "Community health",
"note": null,
"notes": [],
"value": 50,
"inputs": {
"has_readme": true,
"has_license": true,
"has_contributing": false,
"has_issue_template": false,
"has_code_of_conduct": false,
"has_pull_request_template": false
},
"components": [
{
"key": "readme",
"name": "README",
"detail": null,
"points": 22.5,
"status": "met",
"details": [],
"max_points": 22.5
},
{
"key": "license",
"name": "License",
"detail": "recognized license (Apache-2.0)",
"points": 22.5,
"status": "met",
"details": [
{
"code": "license_standard",
"params": {}
},
{
"code": "license_spdx",
"params": {
"spdx": "Apache-2.0"
}
}
],
"max_points": 22.5
},
{
"key": "contributing_guide",
"name": "CONTRIBUTING guide",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 18
},
{
"key": "code_of_conduct",
"name": "Code of conduct",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 13.5
},
{
"key": "issue_template",
"name": "Issue template",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 7.2
},
{
"key": "pr_template",
"name": "PR template",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 6.3
}
]
}
],
"description": "Does the project have users, downloads, attention, and a welcoming setup for contributors?"
},
{
"key": "governance",
"band": "good",
"name": "Sustainability & Governance",
"value": 71,
"weight": 0.24,
"metrics": [
{
"key": "maintainer_resilience",
"band": "moderate",
"name": "Maintainer resilience (bus factor)",
"note": null,
"notes": [],
"value": 55,
"inputs": {
"bus_factor": 2,
"contributors_sampled": 13,
"top_contributor_share": 0.394
},
"components": [
{
"key": "bus_factor",
"name": "Bus factor",
"detail": "2 contributor(s) cover half of all commits",
"points": 25.2,
"status": "partial",
"details": [
{
"code": "bus_factor",
"params": {
"count": 2
}
}
],
"max_points": 54
},
{
"key": "commit_distribution",
"name": "Commit distribution",
"detail": "top contributor authored 39% of commits",
"points": 13.6,
"status": "partial",
"details": [
{
"code": "top_contributor_share",
"params": {
"share": 39
}
}
],
"max_points": 22.5
},
{
"key": "contributor_breadth",
"name": "Contributor breadth",
"detail": "13 contributors",
"points": 13.5,
"status": "met",
"details": [
{
"code": "contributors_sampled",
"params": {
"count": 13
}
}
],
"max_points": 13.5
},
{
"key": "openssf_scorecard_contributors",
"name": "OpenSSF Scorecard: Contributors",
"detail": "project has 1 contributing companies or organizations -- score normalized to 3",
"points": 3,
"status": "partial",
"details": [],
"max_points": 10
}
]
},
{
"key": "responsiveness",
"band": "good",
"name": "Issue & PR responsiveness",
"note": null,
"notes": [],
"value": 80,
"inputs": {
"merged_prs": 428,
"open_issues": 25,
"closed_issues": 81,
"issue_closed_ratio": 0.764,
"closed_unmerged_prs": 131
},
"components": [
{
"key": "issue_resolution",
"name": "Issue resolution",
"detail": "76% of issues closed",
"points": 35.7,
"status": "partial",
"details": [
{
"code": "issues_closed_share",
"params": {
"share": 76
}
}
],
"max_points": 46.75
},
{
"key": "pr_acceptance",
"name": "PR acceptance",
"detail": "428/559 decided PRs merged",
"points": 29.3,
"status": "partial",
"details": [
{
"code": "decided_prs_merged",
"params": {
"merged": 428,
"decided": 559
}
}
],
"max_points": 38.25
},
{
"key": "openssf_scorecard_code_review",
"name": "OpenSSF Scorecard: Code-Review",
"detail": "all changesets reviewed",
"points": 15,
"status": "met",
"details": [],
"max_points": 15
}
]
},
{
"key": "stewardship",
"band": "moderate",
"name": "Ownership & stewardship",
"note": null,
"notes": [],
"value": 59,
"inputs": {
"followers": 6,
"owner_type": "Organization",
"is_verified": null,
"owner_login": "dana-team",
"public_repos": 38,
"account_age_days": 2068
},
"components": [
{
"key": "ownership_backing",
"name": "Ownership backing",
"detail": "organization-owned",
"points": 30,
"status": "met",
"details": [
{
"code": "owner_organization",
"params": {}
}
],
"max_points": 30
},
{
"key": "verified_domain",
"name": "Verified domain",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 20
},
{
"key": "owner_reach",
"name": "Owner reach",
"detail": "6 followers of dana-team",
"points": 6.1,
"status": "partial",
"details": [
{
"code": "owner_followers",
"params": {
"count": 6,
"login": "dana-team"
}
}
],
"max_points": 25
},
{
"key": "track_record",
"name": "Track record",
"detail": "38 public repos, account ~5 yr old",
"points": 22.9,
"status": "partial",
"details": [
{
"code": "public_repos",
"params": {
"count": 38
}
},
{
"code": "account_age_years",
"params": {
"years": 5
}
}
],
"max_points": 25
}
]
},
{
"key": "package_maintenance",
"band": "excellent",
"name": "Package maintenance",
"note": null,
"notes": [],
"value": 100,
"inputs": {
"packages": [
"github.com/dana-team/container-app-operator"
],
"ecosystems": "go",
"any_deprecated": false,
"min_days_since_publish": 6
},
"components": [
{
"key": "published_resolvable",
"name": "Published & resolvable",
"detail": "1 package(s) on go",
"points": 25,
"status": "met",
"details": [
{
"code": "packages_published",
"params": {
"count": 1,
"ecosystems": "go"
}
}
],
"max_points": 25
},
{
"key": "publish_recency",
"name": "Publish recency",
"detail": "latest publish 6 days ago",
"points": 35,
"status": "met",
"details": [
{
"code": "publish_recency",
"params": {
"days": 6
}
}
],
"max_points": 35
},
{
"key": "version_history",
"name": "Version history",
"detail": "38 published versions",
"points": 20,
"status": "met",
"details": [
{
"code": "published_versions",
"params": {
"count": 38
}
}
],
"max_points": 20
},
{
"key": "not_deprecated",
"name": "Not deprecated",
"detail": "active, not deprecated or yanked",
"points": 20,
"status": "met",
"details": [
{
"code": "package_not_deprecated",
"params": {}
}
],
"max_points": 20
}
]
}
],
"description": "Will the project survive its people — bus factor, responsiveness, who backs it, and package upkeep?"
},
{
"key": "engineering",
"band": "good",
"name": "Engineering Quality",
"value": 80,
"weight": 0.2,
"metrics": [
{
"key": "engineering_practices",
"band": "good",
"name": "Engineering practices",
"note": null,
"notes": [],
"value": 84,
"inputs": {
"has_ci": true,
"has_tests": true,
"has_editorconfig": false,
"has_linter_config": true,
"has_precommit_config": false
},
"components": [
{
"key": "ci_workflows",
"name": "CI workflows",
"detail": "4 workflow(s)",
"points": 24,
"status": "met",
"details": [
{
"code": "ci_workflows",
"params": {
"count": 4
}
}
],
"max_points": 24
},
{
"key": "tests_present",
"name": "Tests present",
"detail": null,
"points": 24,
"status": "met",
"details": [],
"max_points": 24
},
{
"key": "linter_config",
"name": "Linter config",
"detail": ".golangci.yml",
"points": 16,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": ".golangci.yml"
}
}
],
"max_points": 16
},
{
"key": "pre_commit_hooks",
"name": "Pre-commit hooks",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 9.6
},
{
"key": "editorconfig",
"name": ".editorconfig",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 6.4
},
{
"key": "openssf_scorecard_ci_tests",
"name": "OpenSSF Scorecard: CI-Tests",
"detail": "16 out of 16 merged PRs checked by a CI test -- score normalized to 10",
"points": 20,
"status": "met",
"details": [],
"max_points": 20
}
]
},
{
"key": "documentation",
"band": "good",
"name": "Documentation",
"note": null,
"notes": [],
"value": 75,
"inputs": {
"topics": [],
"has_wiki": true,
"homepage": null,
"has_readme": true,
"has_docs_dir": true,
"has_description": true
},
"components": [
{
"key": "readme",
"name": "README",
"detail": null,
"points": 30,
"status": "met",
"details": [],
"max_points": 30
},
{
"key": "documentation_directory",
"name": "Documentation directory",
"detail": null,
"points": 25,
"status": "met",
"details": [],
"max_points": 25
},
{
"key": "documentation_homepage_site",
"name": "Documentation / homepage site",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 15
},
{
"key": "repository_description",
"name": "Repository description",
"detail": null,
"points": 10,
"status": "met",
"details": [],
"max_points": 10
},
{
"key": "topics",
"name": "Topics",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 10
},
{
"key": "wiki",
"name": "Wiki",
"detail": null,
"points": 10,
"status": "met",
"details": [],
"max_points": 10
}
]
}
],
"description": "Are baseline engineering and documentation practices in place?"
},
{
"key": "security",
"band": "moderate",
"name": "Security",
"value": 66,
"weight": 0.16,
"metrics": [
{
"key": "security_posture",
"band": "moderate",
"name": "Security posture",
"note": "Excluded from scoring (no data or not applicable): Branch-Protection. Remaining weights renormalized.",
"notes": [
{
"code": "excluded_no_data",
"params": {
"components": [
"branch_protection"
]
}
},
{
"code": "weights_renormalized",
"params": {}
}
],
"value": 57,
"inputs": {
"source": "openssf_scorecard",
"checks_evaluated": 17,
"scorecard_version": "v5.5.0",
"checks_inconclusive": 1,
"scorecard_aggregate": 5.7
},
"components": [
{
"key": "binary_artifacts",
"name": "Binary-Artifacts",
"detail": "no binaries found in the repo",
"points": 7.5,
"status": "met",
"details": [],
"max_points": 7.5
},
{
"key": "branch_protection",
"name": "Branch-Protection",
"detail": "internal error: error during branchesHandler.setup: internal error: some github tokens can't read classic branch protection rules: https://github.com/ossf/scorecard-action/blob/main/docs/authentication/fine-grained-auth-token.md",
"points": 0,
"status": "excluded",
"details": [
{
"code": "no_data",
"params": {}
}
],
"max_points": 7.5
},
{
"key": "ci_tests",
"name": "CI-Tests",
"detail": "16 out of 16 merged PRs checked by a CI test -- score normalized to 10",
"points": 2.5,
"status": "met",
"details": [],
"max_points": 2.5
},
{
"key": "cii_best_practices",
"name": "CII-Best-Practices",
"detail": "no effort to earn an OpenSSF best practices badge detected",
"points": 0,
"status": "missed",
"details": [],
"max_points": 2.5
},
{
"key": "code_review",
"name": "Code-Review",
"detail": "all changesets reviewed",
"points": 7.5,
"status": "met",
"details": [],
"max_points": 7.5
},
{
"key": "contributors",
"name": "Contributors",
"detail": "project has 1 contributing companies or organizations -- score normalized to 3",
"points": 0.8,
"status": "partial",
"details": [],
"max_points": 2.5
},
{
"key": "dangerous_workflow",
"name": "Dangerous-Workflow",
"detail": "no dangerous workflow patterns detected",
"points": 10,
"status": "met",
"details": [],
"max_points": 10
},
{
"key": "dependency_update_tool",
"name": "Dependency-Update-Tool",
"detail": "update tool detected",
"points": 7.5,
"status": "met",
"details": [],
"max_points": 7.5
},
{
"key": "fuzzing",
"name": "Fuzzing",
"detail": "project is not fuzzed",
"points": 0,
"status": "missed",
"details": [],
"max_points": 5
},
{
"key": "license",
"name": "License",
"detail": "license file detected",
"points": 2.5,
"status": "met",
"details": [],
"max_points": 2.5
},
{
"key": "maintained",
"name": "Maintained",
"detail": "30 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 10",
"points": 7.5,
"status": "met",
"details": [],
"max_points": 7.5
},
{
"key": "packaging",
"name": "Packaging",
"detail": "packaging workflow detected",
"points": 5,
"status": "met",
"details": [],
"max_points": 5
},
{
"key": "pinned_dependencies",
"name": "Pinned-Dependencies",
"detail": "dependency not pinned by hash detected -- score normalized to 3",
"points": 1.5,
"status": "partial",
"details": [],
"max_points": 5
},
{
"key": "sast",
"name": "SAST",
"detail": "SAST tool is not run on all commits -- score normalized to 0",
"points": 0,
"status": "missed",
"details": [],
"max_points": 5
},
{
"key": "security_policy",
"name": "Security-Policy",
"detail": "security policy file not detected",
"points": 0,
"status": "missed",
"details": [],
"max_points": 5
},
{
"key": "signed_releases",
"name": "Signed-Releases",
"detail": "Project has not signed or included provenance with any releases.",
"points": 0,
"status": "missed",
"details": [],
"max_points": 7.5
},
{
"key": "token_permissions",
"name": "Token-Permissions",
"detail": "detected GitHub workflow tokens with excessive permissions",
"points": 0,
"status": "missed",
"details": [],
"max_points": 7.5
},
{
"key": "vulnerabilities",
"name": "Vulnerabilities",
"detail": "6 existing vulnerabilities detected",
"points": 3,
"status": "partial",
"details": [],
"max_points": 7.5
}
]
},
{
"key": "dependency_advisories",
"band": "excellent",
"name": "Dependency advisories",
"note": "Excluded from scoring (no data or not applicable): Indirect dependencies free of known advisories, No advisories left outstanding. Remaining weights renormalized. Matched 383 resolved dependencies against OSV. This repository publishes no package the index resolves, so the repository dependency graph was assessed instead. That graph mixes development and test pins with shipped dependencies, so only the declared runtime dependencies are scored; transitive findings are reported as context and excluded from the score. Reachability is not analyzed.",
"notes": [
{
"code": "excluded_no_data",
"params": {
"components": [
"indirect_dependencies_free_of_known_advisories",
"no_advisories_left_outstanding"
]
}
},
{
"code": "weights_renormalized",
"params": {}
},
{
"code": "advisories_scope_repository",
"params": {
"assessed": 383
}
},
{
"code": "advisories_repo_graph_caveat",
"params": {}
},
{
"code": "advisories_reachability",
"params": {}
}
],
"value": 100,
"inputs": {
"source": "osv",
"advisories": 6,
"affected_packages": 6,
"assessed_packages": 383,
"unassessed_packages": 0,
"affected_by_severity": "critical 1, moderate 1, unknown 4",
"direct_affected_packages": 0
},
"components": [
{
"key": "direct_dependencies_free_of_known_advisories",
"name": "Direct dependencies free of known advisories",
"detail": "no direct dependency carries a known advisory",
"points": 35,
"status": "met",
"details": [
{
"code": "no_direct_advisories",
"params": {}
}
],
"max_points": 35
},
{
"key": "indirect_dependencies_free_of_known_advisories",
"name": "Indirect dependencies free of known advisories",
"detail": "transitive set not separable from development and test dependencies in this scope",
"points": 0,
"status": "excluded",
"details": [
{
"code": "advisories_scope_not_separable",
"params": {}
}
],
"max_points": 25
},
{
"key": "no_advisories_left_outstanding",
"name": "No advisories left outstanding",
"detail": "no advisory carries a publication date",
"points": 0,
"status": "excluded",
"details": [
{
"code": "advisories_no_publication_date",
"params": {}
}
],
"max_points": 40
}
]
},
{
"key": "malicious_dependencies",
"band": "excellent",
"name": "Malicious dependencies",
"note": null,
"notes": [],
"value": 100,
"inputs": {
"source": "osv",
"meaning": "reported as a malicious package by the OpenSSF corpus; the remedy is removal or moving off the compromised name, never an upgrade of the same artifact. Versions the registry has since pulled are listed but not scored",
"packages": [],
"red_flag": false,
"assessed_packages": 383,
"malicious_packages": 0,
"direct_malicious_packages": 0,
"withdrawn_malicious_packages": 0,
"installable_malicious_packages": 0
},
"components": [
{
"key": "no_dependency_reported_as_a_malicious_package",
"name": "No dependency reported as a malicious package",
"detail": "no dependency is reported as a malicious package",
"points": 100,
"status": "met",
"details": [
{
"code": "no_malicious_dependencies",
"params": {}
}
],
"max_points": 100
}
]
},
{
"key": "high_risk_jurisdiction_exposure",
"band": "excellent",
"name": "High-Risk Jurisdiction Exposure",
"note": "Only high-confidence self-published location evidence affects this multiplier. Ambiguous matches are review-only; country evidence is not proof of nationality, citizenship, legal registration, malicious intent, or sanctions status.",
"notes": [
{
"code": "jurisdiction_evidence_limits",
"params": {}
}
],
"value": 100,
"inputs": {
"meaning": "self-published location evidence; not nationality or citizenship",
"red_flag": false,
"exposures": [],
"policy_countries": [
"Russia",
"Iran",
"North Korea"
],
"review_only_matches": 0,
"assessed_self_published_locations": 1
},
"components": [
{
"key": "policy_exposure_multiplier",
"name": "Policy exposure multiplier",
"detail": "no confirmed policy-scope location match",
"points": 100,
"status": "met",
"details": [
{
"code": "jurisdiction_no_match",
"params": {}
}
],
"max_points": 100
}
]
}
],
"description": "Are visible security and supply-chain practices strong, with no malicious dependency and no unresolved high-risk jurisdiction exposure?"
},
{
"key": "ai_readiness",
"band": "moderate",
"name": "AI Readiness",
"value": 66,
"weight": 0,
"metrics": [
{
"key": "ai_agent_context",
"band": "at_risk",
"name": "Agent context & guidance",
"note": null,
"notes": [],
"value": 40,
"inputs": {
"has_llms_txt": false,
"legible_history_share": 1,
"agent_instruction_files": [],
"agent_instruction_max_bytes": null
},
"components": [
{
"key": "agent_instructions",
"name": "Agent instructions",
"detail": "no CLAUDE.md / AGENTS.md / editor rules",
"points": 0,
"status": "missed",
"details": [
{
"code": "no_agent_instructions",
"params": {}
}
],
"max_points": 45
},
{
"key": "machine_readable_docs_llms_txt",
"name": "Machine-readable docs (llms.txt)",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 15
},
{
"key": "legible_commit_history",
"name": "Legible commit history",
"detail": "55 of 55 human commits state their intent (structured subject or explanatory body)",
"points": 40,
"status": "met",
"details": [
{
"code": "legible_history",
"params": {
"legible": 55,
"sampled": 55
}
}
],
"max_points": 40
}
]
},
{
"key": "ai_verify_loop",
"band": "good",
"name": "Verify loop (build / test / typecheck)",
"note": null,
"notes": [],
"value": 83,
"inputs": {
"has_nix": false,
"has_tests": true,
"lockfiles": [
"go.sum"
],
"has_dockerfile": true,
"typed_language": true,
"bootstrap_files": [
"Makefile"
],
"has_devcontainer": true,
"has_linter_config": true,
"typecheck_configs": [],
"agent_commit_share": 0,
"toolchain_manifests": [
"go.mod"
],
"dependency_bot_commit_share": 0.07
},
"components": [
{
"key": "one_command_bootstrap",
"name": "One-command bootstrap",
"detail": "Makefile",
"points": 18,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "Makefile"
}
}
],
"max_points": 18
},
{
"key": "automated_tests",
"name": "Automated tests",
"detail": null,
"points": 22,
"status": "met",
"details": [],
"max_points": 22
},
{
"key": "lint_format_config",
"name": "Lint / format config",
"detail": ".golangci.yml",
"points": 11,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": ".golangci.yml"
}
}
],
"max_points": 11
},
{
"key": "static_type_checking",
"name": "Static type checking",
"detail": "Go (statically typed)",
"points": 11,
"status": "met",
"details": [
{
"code": "statically_typed_language",
"params": {
"language": "Go"
}
}
],
"max_points": 11
},
{
"key": "reproducible_environment",
"name": "Reproducible environment",
"detail": "devcontainer, Dockerfile, lockfile",
"points": 10,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "devcontainer, Dockerfile, lockfile"
}
}
],
"max_points": 10
},
{
"key": "demonstrated_agent_practice",
"name": "Demonstrated agent practice",
"detail": "no agent-authored commits among the last 100",
"points": 0,
"status": "missed",
"details": [
{
"code": "no_agent_authored_commits",
"params": {
"sampled": 100
}
}
],
"max_points": 10
},
{
"key": "automated_maintenance",
"name": "Automated maintenance",
"detail": "7 of the last 100 commits are automated dependency updates",
"points": 8,
"status": "met",
"details": [
{
"code": "dependency_bot_commits",
"params": {
"count": 7,
"sampled": 100
}
}
],
"max_points": 8
},
{
"key": "openssf_scorecard_pinned_dependencies",
"name": "OpenSSF Scorecard: Pinned-Dependencies",
"detail": "dependency not pinned by hash detected -- score normalized to 3",
"points": 3,
"status": "partial",
"details": [],
"max_points": 10
}
]
},
{
"key": "ai_code_legibility",
"band": "excellent",
"name": "Code legibility for models",
"note": null,
"notes": [],
"value": 100,
"inputs": {
"primary_language": "Go",
"largest_source_bytes": 22623,
"source_files_sampled": 84,
"oversized_source_files": 0
},
"components": [
{
"key": "type_checkable_code",
"name": "Type-checkable code",
"detail": "Go (statically typed)",
"points": 45,
"status": "met",
"details": [
{
"code": "statically_typed_language",
"params": {
"language": "Go"
}
}
],
"max_points": 45
},
{
"key": "manageable_file_sizes",
"name": "Manageable file sizes",
"detail": "0/84 source files over 60KB",
"points": 55,
"status": "met",
"details": [
{
"code": "oversized_source_files",
"params": {
"kb": 60,
"sampled": 84,
"oversized": 0
}
}
],
"max_points": 55
}
]
},
{
"key": "ai_interfaces",
"band": "at_risk",
"name": "Machine-readable interfaces",
"note": null,
"notes": [],
"value": 40,
"inputs": {
"example_dirs": [
"examples",
"samples"
],
"has_mcp_signal": false,
"api_schema_files": []
},
"components": [
{
"key": "api_schema_openapi_graphql_proto",
"name": "API schema (OpenAPI/GraphQL/proto)",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 40
},
{
"key": "mcp_server",
"name": "MCP server",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 20
},
{
"key": "runnable_examples",
"name": "Runnable examples",
"detail": "examples, samples",
"points": 40,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "examples, samples"
}
}
],
"max_points": 40
}
]
}
],
"description": "How well is the repo equipped to be developed and maintained with AI coding agents? An independent, experimental badge — weight 0.0, so it is surfaced on its own and does not affect the overall health score."
}
],
"metrics_version": "1.13.0"
},
"warnings": [
"Star history unavailable: GitHub GraphQL error: Resource not accessible by personal access token"
],
"report_type": "repository",
"generated_at": "2026-07-26T01:18:08.980026Z",
"schema_version": "0.27.0",
"badge_url": "https://raw.githubusercontent.com/inspect-software/badges/main/v1/d/dana-team/container-app-operator.svg",
"full_name": "dana-team/container-app-operator",
"license_state": "standard",
"license_spdx": "Apache-2.0"
}