Informe JSON sin procesar legible por máquina
{
"data": {
"repo": {
"topics": [
"catalog",
"database",
"e-commerce",
"faceted-search",
"graphql-api",
"grpc-api",
"hierarchy-structure",
"histogram",
"in-memory-database",
"nosql-database",
"oltp",
"price-search",
"rest-api"
],
"is_fork": false,
"size_kb": 172470,
"has_wiki": true,
"homepage": "https://evitadb.io",
"languages": {
"Java": 75056657,
"ANTLR": 58471,
"Shell": 143390,
"Python": 12959,
"Dockerfile": 3132
},
"pushed_at": "2026-07-24T11:47:00Z",
"created_at": "2023-02-22T16:29:30Z",
"owner_type": "Organization",
"updated_at": "2026-07-24T08:26:18Z",
"description": "evitaDB is a specialized database with an easy-to-use API for e-commerce systems. It is a low-latency NoSQL in-memory engine that handles all the complex tasks that e-commerce systems have to deal with on a daily basis. evitaDB is expected to act as a fast secondary lookup/search index used by front stores.",
"is_archived": false,
"is_disabled": false,
"license_spdx": null,
"default_branch": "dev",
"license_spdx_raw": "NOASSERTION",
"primary_language": "Java",
"significant_languages": [
"Java"
]
},
"owner": {
"blog": "https://www.fg.cz",
"name": "FG Forrest",
"type": "Organization",
"login": "FgForrest",
"company": null,
"location": "Czech Republic",
"followers": 14,
"avatar_url": "https://avatars.githubusercontent.com/u/797401?v=4",
"created_at": "2011-05-19T05:31:36Z",
"is_verified": null,
"public_repos": 26,
"account_age_days": 5545
},
"license": {
"state": "custom",
"spdx_id": null,
"raw_spdx": "NOASSERTION",
"file_present": true,
"scorecard_found": true,
"profile_has_license": true
},
"activity": {
"releases": [
{
"tag": "v2026.1.20",
"kind": "patch",
"published_at": "2026-07-23T15:04:19Z"
},
{
"tag": "v2026.1.19",
"kind": "patch",
"published_at": "2026-07-17T13:02:17Z"
},
{
"tag": "v2026.1.17",
"kind": "patch",
"published_at": "2026-07-01T20:44:43Z"
},
{
"tag": "v2026.1.16",
"kind": "patch",
"published_at": "2026-06-26T11:00:25Z"
},
{
"tag": "v2026.1.15",
"kind": "patch",
"published_at": "2026-06-24T14:23:03Z"
},
{
"tag": "v2026.1.14",
"kind": "patch",
"published_at": "2026-06-15T14:27:38Z"
},
{
"tag": "v2026.1.13",
"kind": "patch",
"published_at": "2026-06-06T21:21:55Z"
},
{
"tag": "v2026.1.12",
"kind": "patch",
"published_at": "2026-06-01T22:46:55Z"
},
{
"tag": "v2026.1.11",
"kind": "patch",
"published_at": "2026-05-28T14:15:00Z"
},
{
"tag": "v2026.1.10",
"kind": "patch",
"published_at": "2026-05-24T07:51:31Z"
},
{
"tag": "v2026.1.9",
"kind": "patch",
"published_at": "2026-05-16T13:02:33Z"
},
{
"tag": "v2025.7.19",
"kind": "patch",
"published_at": "2026-05-16T11:38:44Z"
},
{
"tag": "v2025.7.18",
"kind": "patch",
"published_at": "2026-05-15T12:16:48Z"
},
{
"tag": "v2026.1.8",
"kind": "patch",
"published_at": "2026-04-29T08:37:49Z"
},
{
"tag": "v2026.1.5",
"kind": "patch",
"published_at": "2026-04-22T21:04:40Z"
},
{
"tag": "v2026.1.4",
"kind": "patch",
"published_at": "2026-04-22T08:32:54Z"
},
{
"tag": "v2025.7.17",
"kind": "patch",
"published_at": "2026-04-16T13:11:22Z"
},
{
"tag": "v2026.1.3",
"kind": "patch",
"published_at": "2026-04-08T15:13:00Z"
},
{
"tag": "v2026.1.2",
"kind": "patch",
"published_at": "2026-04-01T19:56:33Z"
},
{
"tag": "v2026.1.1",
"kind": "patch",
"published_at": "2026-03-31T11:51:17Z"
},
{
"tag": "v2026.1.0",
"kind": "minor",
"published_at": "2026-02-27T20:40:16Z"
},
{
"tag": "v2025.7.16",
"kind": "patch",
"published_at": "2026-02-23T09:40:44Z"
},
{
"tag": "v2025.8.15",
"kind": "patch",
"published_at": "2026-02-20T22:40:27Z"
},
{
"tag": "v2025.7.15",
"kind": "patch",
"published_at": "2026-02-20T20:42:22Z"
},
{
"tag": "v2025.8.14",
"kind": "patch",
"published_at": "2026-02-13T08:25:31Z"
},
{
"tag": "v2025.7.14",
"kind": "patch",
"published_at": "2026-02-12T16:26:28Z"
},
{
"tag": "v2025.8.13",
"kind": "patch",
"published_at": "2026-01-31T11:51:23Z"
},
{
"tag": "v2025.8.12",
"kind": "patch",
"published_at": "2026-01-27T21:28:28Z"
},
{
"tag": "v2025.7.12",
"kind": "patch",
"published_at": "2026-01-27T21:35:47Z"
},
{
"tag": "v2025.8.11",
"kind": "patch",
"published_at": "2026-01-23T13:38:01Z"
},
{
"tag": "v2025.7.11",
"kind": "patch",
"published_at": "2026-01-23T09:01:00Z"
},
{
"tag": "v2025.8.10",
"kind": "patch",
"published_at": "2026-01-16T07:41:53Z"
},
{
"tag": "v2025.8.9",
"kind": "patch",
"published_at": "2026-01-13T15:37:11Z"
},
{
"tag": "v2025.7.10",
"kind": "patch",
"published_at": "2026-01-13T15:20:08Z"
},
{
"tag": "v2025.8.8",
"kind": "patch",
"published_at": "2026-01-12T14:20:56Z"
},
{
"tag": "v2025.8.7",
"kind": "patch",
"published_at": "2026-01-12T07:44:46Z"
},
{
"tag": "v2025.8.6",
"kind": "patch",
"published_at": "2026-01-09T19:16:38Z"
},
{
"tag": "v2025.8.5",
"kind": "patch",
"published_at": "2026-01-05T17:52:22Z"
},
{
"tag": "v2025.7.9",
"kind": "patch",
"published_at": "2026-01-05T17:59:52Z"
},
{
"tag": "v2025.8.4",
"kind": "patch",
"published_at": "2025-12-23T12:15:50Z"
},
{
"tag": "v2025.8.3",
"kind": "patch",
"published_at": "2025-12-20T00:01:09Z"
},
{
"tag": "v2025.8.2",
"kind": "patch",
"published_at": "2025-12-17T15:03:43Z"
},
{
"tag": "v2025.8.1",
"kind": "patch",
"published_at": "2025-12-16T15:59:28Z"
},
{
"tag": "v2025.7.8",
"kind": "patch",
"published_at": "2025-12-16T07:43:23Z"
},
{
"tag": "v2025.7.7",
"kind": "patch",
"published_at": "2025-12-05T15:48:33Z"
},
{
"tag": "v2025.7.6",
"kind": "patch",
"published_at": "2025-11-20T12:53:35Z"
},
{
"tag": "v2025.7.5",
"kind": "patch",
"published_at": "2025-11-20T09:50:55Z"
},
{
"tag": "v2025.7.4",
"kind": "patch",
"published_at": "2025-11-18T09:08:45Z"
},
{
"tag": "v2025.7.3",
"kind": "patch",
"published_at": "2025-11-06T20:13:37Z"
},
{
"tag": "v2025.5.9",
"kind": "patch",
"published_at": "2025-10-30T14:02:59Z"
},
{
"tag": "v2025.7.2",
"kind": "patch",
"published_at": "2025-10-29T14:12:19Z"
},
{
"tag": "v2025.7.1",
"kind": "patch",
"published_at": "2025-10-25T10:25:07Z"
},
{
"tag": "v2025.7.0",
"kind": "minor",
"published_at": "2025-10-08T21:28:58Z"
},
{
"tag": "v2025.6.2",
"kind": "patch",
"published_at": "2025-09-11T12:12:33Z"
},
{
"tag": "v2025.6.1",
"kind": "patch",
"published_at": "2025-08-20T14:31:38Z"
},
{
"tag": "v2025.6.0",
"kind": "minor",
"published_at": "2025-08-20T07:36:44Z"
},
{
"tag": "v2025.5.8",
"kind": "patch",
"published_at": "2025-07-22T14:16:36Z"
},
{
"tag": "v2025.5.7",
"kind": "patch",
"published_at": "2025-07-21T08:59:19Z"
},
{
"tag": "v2025.5.6",
"kind": "patch",
"published_at": "2025-07-14T20:43:47Z"
},
{
"tag": "v2025.5.5",
"kind": "patch",
"published_at": "2025-07-14T13:51:57Z"
},
{
"tag": "v2025.5.4",
"kind": "patch",
"published_at": "2025-07-11T10:30:13Z"
},
{
"tag": "v2025.5.3",
"kind": "patch",
"published_at": "2025-07-11T09:23:53Z"
},
{
"tag": "v2025.5.2",
"kind": "patch",
"published_at": "2025-07-09T13:34:38Z"
},
{
"tag": "v2025.5.1",
"kind": "patch",
"published_at": "2025-07-09T12:08:15Z"
},
{
"tag": "v2025.5.0",
"kind": "minor",
"published_at": "2025-07-09T05:46:02Z"
},
{
"tag": "v2025.4.3",
"kind": "patch",
"published_at": "2025-06-04T13:15:28Z"
},
{
"tag": "v2025.4.2",
"kind": "patch",
"published_at": "2025-05-30T15:49:10Z"
},
{
"tag": "v2025.4.1",
"kind": "patch",
"published_at": "2025-05-23T13:15:01Z"
},
{
"tag": "v2025.4.0",
"kind": "minor",
"published_at": "2025-05-23T12:02:47Z"
},
{
"tag": "v2025.3.9",
"kind": "patch",
"published_at": "2025-05-23T09:21:04Z"
},
{
"tag": "v2025.3.8",
"kind": "patch",
"published_at": "2025-04-29T08:16:01Z"
},
{
"tag": "v2025.3.7",
"kind": "patch",
"published_at": "2025-04-25T07:11:25Z"
},
{
"tag": "v2025.3.6",
"kind": "patch",
"published_at": "2025-04-25T06:57:05Z"
},
{
"tag": "v2025.3.5",
"kind": "patch",
"published_at": "2025-04-14T12:47:03Z"
},
{
"tag": "v2025.3.4",
"kind": "patch",
"published_at": "2025-04-14T12:17:15Z"
},
{
"tag": "v2025.3.3",
"kind": "patch",
"published_at": "2025-04-08T13:49:16Z"
},
{
"tag": "v2025.3.2",
"kind": "patch",
"published_at": "2025-04-08T13:32:26Z"
},
{
"tag": "v2025.2.0",
"kind": "minor",
"published_at": "2025-03-26T14:00:53Z"
},
{
"tag": "v2025.1.2",
"kind": "patch",
"published_at": "2025-03-23T14:23:41Z"
},
{
"tag": "v2024.12.11",
"kind": "patch",
"published_at": "2025-02-25T21:32:49Z"
},
{
"tag": "v2024.12.10",
"kind": "patch",
"published_at": "2025-02-25T14:55:51Z"
},
{
"tag": "v2025.1.1",
"kind": "patch",
"published_at": "2025-02-06T12:08:43Z"
},
{
"tag": "v2025.1.0",
"kind": "minor",
"published_at": "2025-02-06T08:27:34Z"
},
{
"tag": "v2024.12.8",
"kind": "patch",
"published_at": "2025-02-04T16:29:25Z"
},
{
"tag": "v2024.12.7",
"kind": "patch",
"published_at": "2025-02-04T16:06:01Z"
},
{
"tag": "v2024.12.6",
"kind": "patch",
"published_at": "2025-02-04T15:36:18Z"
},
{
"tag": "v2024.11.13-release202411.2.065880d6d",
"kind": "prerelease",
"published_at": "2025-02-04T16:03:27Z"
},
{
"tag": "v2024.12.5",
"kind": "patch",
"published_at": "2025-02-04T08:45:48Z"
},
{
"tag": "v2024.12.4",
"kind": "patch",
"published_at": "2025-01-30T14:23:57Z"
},
{
"tag": "v2024.12.3",
"kind": "patch",
"published_at": "2025-01-27T15:48:48Z"
},
{
"tag": "v2024.12.2",
"kind": "patch",
"published_at": "2025-01-20T16:51:27Z"
},
{
"tag": "v2024.12.1",
"kind": "patch",
"published_at": "2025-01-13T11:08:12Z"
},
{
"tag": "v2024.12.0",
"kind": "minor",
"published_at": "2024-12-20T09:57:45Z"
},
{
"tag": "v2024.11.11",
"kind": "patch",
"published_at": "2024-11-06T14:47:41Z"
},
{
"tag": "v2024.11.10",
"kind": "patch",
"published_at": "2024-11-04T16:24:57Z"
},
{
"tag": "v2024.11.9",
"kind": "patch",
"published_at": "2024-11-04T09:34:53Z"
},
{
"tag": "v2024.11.8",
"kind": "patch",
"published_at": "2024-11-01T08:55:14Z"
},
{
"tag": "v2024.11.7",
"kind": "patch",
"published_at": "2024-10-30T17:36:54Z"
},
{
"tag": "v2024.11.6",
"kind": "patch",
"published_at": "2024-10-29T16:16:07Z"
},
{
"tag": "v2024.11.5",
"kind": "patch",
"published_at": "2024-10-25T19:14:45Z"
}
],
"recent_commits": [
{
"oid": "6499fe48009e633a937d8a4f71f8703d00a3d608",
"body": null,
"is_bot": false,
"headline": "Merge remote-tracking branch 'origin/dev' into dev",
"author_name": "Jan Novotný",
"author_login": "novoj",
"committed_at": "2026-07-24T08:16:01Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "810ce214f25efee557ba2d5433f75c576031a090",
"body": "…release\n\nAudited every @Deprecated(since = ...) annotation against the release in\nwhich the element actually became deprecated (the first tag containing the\ncommit that added @Deprecated), not the version it was last valid in or,\nfor backward-compatibility shim classes, the format vintage it repres\n[…]\n --contains`.\n\nAdded tools/audit-deprecated-since.sh to verify since= values against this\nrule going forward, and codified the convention in\n.claude/rules/deprecation-policy.md, linked from CLAUDE.md.",
"is_bot": false,
"headline": "fix: correct @Deprecated since= values to reflect actual deprecation …",
"author_name": "JNO",
"author_login": null,
"committed_at": "2026-07-24T08:02:40Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "b7f34c7ceffde5b839a6c26384a589c8eeed48b5",
"body": "feat: export configurable query labels as Prometheus dimensions",
"is_bot": false,
"headline": "Merge pull request #1312 from FgForrest/pending-fixes-2026-07-20",
"author_name": "Jan Novotný",
"author_login": "novoj",
"committed_at": "2026-07-23T20:55:49Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "5f4c43c5ea6a1d0b36d705a54fc4aa214365a440",
"body": "Addresses PR #1312 review findings:\n- reject a null `exportedQueryLabels` item (a bare YAML `-`) with a clear\n EvitaInvalidUsageException instead of an NPE, and sort the reserved-name\n list for stable error messages\n- guard Prometheus metric re-registration: a metric's dimension set is now\n store\n[…]\nions\n- document that a configured name colliding with a built-in dimension is\n rejected at metric registration (not config load), and that exported\n label values should avoid comma/equals delimiters",
"is_bot": false,
"headline": "fix: harden configurable query-label export per review",
"author_name": "Jan Novotný",
"author_login": "novoj",
"committed_at": "2026-07-23T20:48:52Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "6e9b822be48760cbbff38a63cc4599e8f3d88d5d",
"body": "Query `label()` head-constraint values were previously visible only in\ntraces, traffic recordings and JFR events - never in Prometheus. This\nadds an opt-in bridge: operators list the label names they want exposed\nas query-metric dimensions via the new `exportedQueryLabels` observability\noption.\n\nThe\n[…]\ns, uri)\n can never be exported;\n- names are sanitized to legal Prometheus dimensions and collisions -\n between two configured labels, or a configured label and a built-in\n dimension - are rejected.",
"is_bot": false,
"headline": "feat: export configurable query labels as Prometheus dimensions",
"author_name": "Jan Novotný",
"author_login": "novoj",
"committed_at": "2026-07-23T20:19:13Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "37b2ebfb3c03e11d45841768784e31f0c9f5674e",
"body": "Maven:\n- com.google.guava:guava 33.5.0-jre -> 33.6.0-jre (test scope)\n- ch.qos.logback:logback-classic 1.5.34 -> 1.5.38\n- io.micrometer:micrometer-registry-prometheus 1.16.5 -> 1.17.0\n- org.roaringbitmap:RoaringBitmap 1.6.12 -> 1.6.15 (performance-tests module\n only; the shipped product uses the ve\n[…]\nule-info\" (confirmed reproducible; 1.17.8 transforms the\nsame classes cleanly). Left open pending an upstream fix or a dedicated\nfollow-up.\n\nRef: #1299, #1301, #1302, #1303, #1304, #1305, #1306, #1307",
"is_bot": false,
"headline": "chore: bump Maven and GitHub Actions dependencies",
"author_name": "Jan Novotný",
"author_login": "novoj",
"committed_at": "2026-07-23T17:52:19Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "3f91571dae77af9b2efe8a195b3f376bf2df2781",
"body": "Pending fixes: query-optimizer NOT leak, index-layer refactors, perf and robustness",
"is_bot": false,
"headline": "Merge pull request #1311 from FgForrest/pending-fixes-2026-07-20",
"author_name": "Jan Novotný",
"author_login": "novoj",
"committed_at": "2026-07-23T17:25:44Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "def416a3dc38008f5966606ab00de2784a89638f",
"body": "Splitting transactional-layer ownership from state production renamed the type\nbeing asserted on, but left seven assertion messages naming the old\nTransactionalLayerProducer. The guards themselves are correct - only the text\nwas stale, so anyone tripping one was pointed at a type the check does not\nlook at.\n\nMessage-only change, no behaviour affected.\n\nRef: #1311",
"is_bot": false,
"headline": "fix: name TransactionalStateProducer in assertion messages that check it",
"author_name": "Jan Novotný",
"author_login": "novoj",
"committed_at": "2026-07-23T15:15:44Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "abbe7023714a89fa9e5711e7b783205a828374b3",
"body": "The previous comment claimed the superset was \"not empty to begin with\", which\nis inaccurate - AndFormula(constant, EmptyFormula) already computes to an empty\nset. What actually matters is that it is not the EmptyFormula *instance* until\nthe optimizer reduces it, because only a change in the NotFormula children\nsteers the optimizer onto the branch that used to drop the node.\n\nRef: #1309",
"is_bot": false,
"headline": "test: clarify why the NOT superset must be a reducible container",
"author_name": "Jan Novotný",
"author_login": "novoj",
"committed_at": "2026-07-23T14:48:57Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "8a0568e528177da029aae3bb08b024ef4771e1f1",
"body": "Listing catalog statistics crashed whenever any catalog folder was absent on\ndisk. A catalog marked MISSING has no folder by definition, so\nUnusableCatalog#getStatistics unconditionally walked a path that does not\nexist and FileUtils#getDirectorySize wrapped the resulting NoSuchFileException\ninto an\n[…]\ntion, so one failing catalog aborted the\nwhole listing and hid every healthy catalog from the client. Statistics are now\ncollected per catalog and a failure degrades to an unusable placeholder record.",
"is_bot": false,
"headline": "fix: report zero size for absent directory instead of failing",
"author_name": "Jan Novotný",
"author_login": "novoj",
"committed_at": "2026-07-23T14:44:19Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "ae1bf12c607f57374ba689dac38b79bd513bbb80",
"body": "FormulaOptimizer removed a NotFormula node from the formula tree when its\nsuperset collapsed to EmptyFormula during optimization. Returning null is the\nFormulaCloner signal for \"remove this child from the parent\", which widens an\nenclosing conjunction instead of emptying it - 'A AND nothing' degrade\n[…]\ne root of the optimized tree, where getPostProcessedFormula\nmaps the dropped null back to EmptyFormula. Both added tests place the node\nunder a conjunctive parent with a surviving sibling.\n\nRef: #1309",
"is_bot": false,
"headline": "fix: replace dropped NOT branch with EmptyFormula in FormulaOptimizer",
"author_name": "Jan Novotný",
"author_login": "novoj",
"committed_at": "2026-07-23T14:37:47Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "40cc690887891fbbd3d2c1d2de290d7d473beed6",
"body": "The performance test module declares its own `annotationProcessorPaths`\nfor the JMH generator, which replaces the parent's list wholesale - any\nprocessor present only on the regular classpath is then ignored. Lombok\nwas silently dropped that way, removing every generated accessor in the\nmodule. It i\n[…]\naining why the duplication is mandatory.\n\n`MockPriceListAndCurrencyPriceIndex` also still implemented the\ntwo-parameter form of `PriceListAndCurrencyPriceIndex`, which no longer\nmatches the interface.",
"is_bot": false,
"headline": "fix: restore Lombok processor path and mock index generic arity",
"author_name": "Jan Novotný",
"author_login": "novoj",
"committed_at": "2026-07-23T13:56:57Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "e2174db6e5d82b0545cca6743bdc95c5e1323cb5",
"body": "Catalog-related index structures held a back-reference to the owning\nCatalog that had to be re-attached on every catalog version bump. This\nretires that dependency so `CatalogRelatedDataStructure` is left with\n`EntityCollection` as its single implementor - one sanctioned catalog\nback-edge instead of\n[…]\ne on the removed\nshell copy is restored on the two constructors that still adopt a locale\nmap (commit merge and inline restore), plus lock-ins for the reduced\nindex carry and for the dirty-flag reset.",
"is_bot": false,
"headline": "refactor: retire attachToCatalog from the index layer",
"author_name": "Jan Novotný",
"author_login": "novoj",
"committed_at": "2026-07-23T13:53:58Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "e9ca1b16dbaaaf0cdcdff897ba6e82cc378f0718",
"body": "createCopyForNewCatalogAttachment produced a detached copy that adopted the\nlocale maps by reference but never primed localePkSequence, leaving it at 0.\nThe first never-before-seen locale registered through such a copy was assigned\nid 1, colliding with an existing locale and overwriting it in the sh\n[…]\nell is created. The two disk-load/merge\nconstructors, which receive a plain committed map, share the invariant via a\nnew primeLocaleSequence helper (replacing their equivalent peek-in-stream\npriming).",
"is_bot": false,
"headline": "fix: prime locale-id sequence in GlobalUniqueIndex shell copy",
"author_name": "JNO",
"author_login": null,
"committed_at": "2026-07-22T14:37:41Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "a79fe5ea1c46225e92eeb531cf0cf0d98a51159e",
"body": "Separate layer ownership from copy production in the STM framework: TransactionalLayerCreator keeps getId/createLayer, a new TransactionalStateProducer carries copy production and removeLayer, and TransactionalLayerProducer extends both.\n\nThe maintainer keys its registry on the bare long id through \n[…]\nObject.clone() copied the final id, so a clone silently resolved to the original's diff layer and shared every mutation. The ComplexObjArrayChanges merge loop also adopts ChangePlan.planNextOperation.",
"is_bot": false,
"headline": "refactor: split transactional-layer ownership from state production",
"author_name": "JNO",
"author_login": null,
"committed_at": "2026-07-22T14:05:46Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "fe8feb2c78817afa7c2fba31ae421a363fb8c649",
"body": "…ation\n\nThe getNextOperations(...) helper that decides the next merge operation was duplicated verbatim across the array diff layers. Move the logic onto ChangePlan itself - it already owns the plan* primitives - as planNextOperation(int, int), and call it from IntArrayChanges and ObjArrayChanges instead of their private static copies.",
"is_bot": false,
"headline": "refactor: share merge-operation selection via ChangePlan.planNextOper…",
"author_name": "JNO",
"author_login": null,
"committed_at": "2026-07-22T14:04:53Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "1046a62e9628f87241af3cc2710d4f3233cad8c8",
"body": "Record the @Nested zero-count report, the tests-skipped-by-default reactor, and the stale ~/.m2 engine jar - each makes a green, correct change look broken or unrun when running a targeted test class from the command line.",
"is_bot": false,
"headline": "docs: document three surefire result-reading traps in testing rules",
"author_name": "JNO",
"author_login": null,
"committed_at": "2026-07-22T14:04:53Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "78512d0ad803759a716dff696eeb2f6924fdc4c3",
"body": "PriceListAndCurrencyPriceRefIndex.removePrice answered \"does this entity still have a price left in this index?\" by materializing the entire price B+ tree of the whole price-list/currency combination into a freshly allocated array and scanning it - O(N) in both time and allocation on every single pr\n[…]\nrms the change is semantics-preserving, and fail against a naive count-based variant that the pre-existing tests did not catch.\n\nClaude-Session: https://claude.ai/code/session_01GUFBCYQHcEAkdy2U4o4xYx",
"is_bot": false,
"headline": "perf: probe the price tree on removal instead of materializing it",
"author_name": "JNO",
"author_login": null,
"committed_at": "2026-07-21T06:04:24Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "8df8d00d62f7346d4af23b4ee6790ae4bc9ff0a1",
"body": "The per-locale collation-key cache defaulted to 8192 slots, far below the pivot working set of a real localized catalog: nearly every B+ tree comparison recomputed a full collation key. Replaying 300 production transactions against a ~1M-product catalog took 537s; sizing the cache to 1M slots cut th\n[…]\ness of the default. Explicit configuration through evita.collationKeyCache.size is unchanged, including 0 to disable the cache.\n\nClaude-Session: https://claude.ai/code/session_01GUFBCYQHcEAkdy2U4o4xYx",
"is_bot": false,
"headline": "perf: derive collation-key cache size from heap instead of fixed 8192",
"author_name": "JNO",
"author_login": null,
"committed_at": "2026-07-21T06:04:24Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "835d30abcda711f3de07012dc72d5ec3099b4938",
"body": "Fix catalog-init race, B+ tree dirty-scope validation, index reclaim leak, span-name laziness",
"is_bot": false,
"headline": "Merge pull request #1298 from FgForrest/pending-fixes-2026-07-20",
"author_name": "Jan Novotný",
"author_login": "novoj",
"committed_at": "2026-07-20T20:25:59Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "67914d5f98beba256aab1db900dbffd8997aad3a",
"body": "Span-name laziness never reached the implementation that ships. The two\nlazily-named overloads of ObservabilityTracingContext composed the name\nbefore consulting the gate, and that class is what the ServiceLoader wires\nin any build carrying the observability module — so the hot call sites the\nlazine\n[…]\nh of the observability implementation.\nAlso drops the reference tag both tracing tests carried; it denotes\nreference-handling tests, and contract plus observability already satisfy\nthe tagging policy.",
"is_bot": false,
"headline": "fix: address PR review — lazy span names, tail-slot guard, cast removal",
"author_name": "Jan Novotný",
"author_login": "novoj",
"committed_at": "2026-07-20T20:13:32Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "8f35d16b05489a478e9fecd8f21ac55221950585",
"body": "shouldBackupAndRestoreCatalogDuringHeavyParallelIndexing and its\n...IncludingWal variant construct a fresh Evita instance and\nimmediately hammer it with 30 parallel generator threads, but never\nwait for the constructor's asynchronous scheduleInitialCatalogLoading()\nto finish. A worker thread could s\n[…]\n rather than the restored copy it was confused with.\n\nEvery other `new Evita(...)` call site in this test file already pairs\nconstruction with `waitUntilFullyInitialized()`; these two were\nmissing it.",
"is_bot": false,
"headline": "fix: wait for catalog init before parallel backup/restore load test",
"author_name": "Jan Novotný",
"author_login": "novoj",
"committed_at": "2026-07-20T14:45:25Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "dc9837128dd5f28e4eef3cdc350c5640576f4790",
"body": "The append-only OffsetIndex reclaims a record only when it is superseded\nor explicitly removed, and compaction copies the live set forward verbatim\nwith no reachability sweep. Two paths left records that were neither:\n\n1. Whole-index drop. Flush is pull-model: popTrappedUpdates iterates only\n the \n[…]\nrollback tests. A family-blind orphan\nsweep asserts no live record resolves to a dropped index, discriminating\nindex-scoped parts by package so new part families are covered without\ntouching the test.",
"is_bot": false,
"headline": "fix: reclaim the on-disk footprint of dropped and emptied indexes",
"author_name": "JNO",
"author_login": null,
"committed_at": "2026-07-20T13:14:15Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "e72507e1fbcd19fcccaf7fece5ac90ada149e076",
"body": "…jects\n\nReworks commit-time dirty-scope validation so the registry keeps per-participant probe KEYS instead of node objects. An observer can no longer read an orphaned/blanked shared array, making the whole NullPointerException / mis-route bug class unrepresentable; setPeek's base branch returns to \n[…]\ning_tests (generational, per-generation block sizes {3,5,7}). Every tree now exercises insert / upsert / delete so split and merge both run under commit - the path the dirty-scope validation fires on.",
"is_bot": false,
"headline": "fix: B+ tree dirty-scope validation registers probe keys, not node ob…",
"author_name": "JNO",
"author_login": null,
"committed_at": "2026-07-20T08:56:31Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "6b2bb635bb97af51bae96805e6658fed04bd55ce",
"body": "Span names are ordinary method arguments, so Java composes them eagerly\neven when the receiving context is the no-op one that throws the name\naway unread. Four hot call sites paid for that on every call: mutation\napplication (`Mutation.toString()` walks the whole mutation), fetch\n(`Arrays.toString()\n[…]\nce helps both implementations.\n\n`LazySpanNameContractTest` pins the laziness of both overloads, which is\notherwise invisible to behavioural tests — forgetting it costs no\ncorrectness, only throughput.",
"is_bot": false,
"headline": "perf: stop building trace span names while tracing is disabled",
"author_name": "Jan Novotný",
"author_login": "novoj",
"committed_at": "2026-07-19T20:50:08Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "89941ec946dde07f99ce681976063fb6769315b6",
"body": "Replace fixed Thread.sleep wall-clock windows with CountDownLatch-based\nsynchronization tied to the task's own execution/completion signal, so\nassertions wait for the deterministic terminal state instead of assuming\na fixed timing budget. Fixes flaky failures under parallelized CI runs\nwhere scheduling latency exceeded the sleep window.",
"is_bot": false,
"headline": "test: make DelayedAsyncTask tests resilient to CI CPU contention",
"author_name": "JNO",
"author_login": null,
"committed_at": "2026-07-19T14:23:55Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "dfca7c6f3eebe7e29ef6a1197d9e482e6c70289c",
"body": "Default GitHub Actions artifact retention (90 days) was letting\nper-run churn artifacts (test-results, dev-build evita-server.jar,\nbenchmark logs, ci-master's release-workflow handoff data) pile up\nto ~10 GiB. Cap those at 14 days; release-build artifacts in\nci-release.yml (versioned server jar, version.txt, release notes)\nkeep the default retention.",
"is_bot": false,
"headline": "chore: trim CI churn-artifact retention to 14 days",
"author_name": "Jan Novotný",
"author_login": "novoj",
"committed_at": "2026-07-19T13:37:15Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "8b118e8b173262e37506cce9fe24477c16cae290",
"body": "…led-timeout-crash\n\nfix: guard gRPC SET_FROM_NOW re-arm against a disabled request timeout",
"is_bot": false,
"headline": "Merge pull request #1297 from FgForrest/1296-grpc-cdc-heartbeat-disab…",
"author_name": "Jan Novotný",
"author_login": "novoj",
"committed_at": "2026-07-18T21:44:46Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "a9f4fe3ae65674dac35f65bc909cbcc4b3ee9fb4",
"body": "Leftover from the earlier extraction commit — the import sorted after\nio.evitadb.externalApi.http.* instead of before it (grpc < http\nalphabetically), unlike the other three call sites that added the same\nimport correctly.",
"is_bot": false,
"headline": "style: fix GrpcTimeoutUtil import order in EvitaManagementService",
"author_name": "Jan Novotný",
"author_login": "novoj",
"committed_at": "2026-07-18T21:37:43Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "737966adddceaf468f44502bd754b9c4599dfb07",
"body": "AtomicReference#updateAndGet requires its update function to be\nside-effect-free, since it re-invokes the function on every lost CAS\nattempt under contention. enqueueCompletion's lambda was not: it called\nprevious.thenRunAsync(...), which registers a real listener on whatever\n`previous` happened to \n[…]\n the next chain link, not the actual stage.complete(...)\nexecution, which still runs later on the caller-supplied executor — so\nthe \"never block the transaction pipeline thread\" property is preserved.",
"is_bot": false,
"headline": "fix: replace CAS-based completionSequencer with a synchronized append",
"author_name": "Jan Novotný",
"author_login": "novoj",
"committed_at": "2026-07-18T21:36:35Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "07d621e10578131eee64982eeee139a1c8545439",
"body": "commitProgress.complete(CommitBehavior, CommitVersions, Executor) chained\na later stage's completion off the earlier stage's CompletableFuture via\na lazily-registered whenComplete listener. CompletableFuture does not\nguarantee multiple pending listeners on the same future fire in\nregistration order \n[…]\ntered on it — has fully finished,\nlistener-firing order now matches stage order for any consumer, not just\nthe gRPC bridge, without changing the public API or blocking the\ntransaction pipeline thread.",
"is_bot": false,
"headline": "fix: guarantee stage-order listener firing in CommitProgressRecord",
"author_name": "Jan Novotný",
"author_login": "novoj",
"committed_at": "2026-07-18T21:19:08Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "dee6dab6d8d85816ea36627f77707940acdea402",
"body": "Deduplicates the 7 copy-pasted \"guard SET_FROM_NOW against a disabled\nrequest timeout\" blocks introduced in the previous commit into a single\nGrpcTimeoutUtil.reArmRequestTimeoutIfEnabled helper, keeping the\nrationale comment in one place. Also updates stale JavaDoc/comments\nthat still described the old TimeoutMode.EXTEND cumulative-extend\nsemantics after those call sites were switched to SET_FROM_NOW's\nper-message reset semantics.\n\nRef: #1296",
"is_bot": false,
"headline": "refactor: extract shared reArmRequestTimeoutIfEnabled helper",
"author_name": "Jan Novotný",
"author_login": "novoj",
"committed_at": "2026-07-18T20:17:31Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "9753031b187e0f4306221e1de04acab4fff2ddb5",
"body": "Armeria treats a request/response timeout of 0 as \"disabled\" almost\neverywhere, but TimeoutMode.SET_FROM_NOW is the one mode that rejects\nit (DefaultCancellationScheduler.setTimeoutNanosFromNow requires a\nstrictly positive duration). CDC streams legitimately run with a\ndisabled request timeout - the\n[…]\nady\nnormalizes the server's request timeout, keeping the client-side\nSET_FROM_NOW re-arms symmetric with the server without threading a\ndisabled-value guard through every client call site.\n\nRef: #1296",
"is_bot": false,
"headline": "fix: guard gRPC SET_FROM_NOW re-arm against a disabled request timeout",
"author_name": "Jan Novotný",
"author_login": "novoj",
"committed_at": "2026-07-18T19:43:36Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "2fc955a9f8f5869a54f8f12989a69ce62863ac44",
"body": "feat: support distance(0) in hierarchy stopAt",
"is_bot": false,
"headline": "Merge pull request #1295 from FgForrest/499-support-distance-zero-stopat",
"author_name": "Jan Novotný",
"author_login": "novoj",
"committed_at": "2026-07-18T11:37:42Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "2d78184b99ed6b84f220e455ab3790d8ca8013b7",
"body": "The prior JavaDoc/user-doc claimed the distance between *any* two nodes\nin the hierarchy equals abs(level(nodeA) - level(nodeB)). That only\nholds along a direct ancestor/descendant line; nodes in different\nbranches (e.g. siblings) sit two edges apart despite sharing a level.\n\nClarify that distance is measured along a lineage from a local pivot,\nand that a siblings traversal treats each sibling as its own pivot for\nthis purpose rather than the original one.\n\nRef: #499",
"is_bot": false,
"headline": "docs: correct distance formula for non-lineage node pairs",
"author_name": "Jan Novotný",
"author_login": "novoj",
"committed_at": "2026-07-18T11:36:43Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "729f88772c354b74c649a2cec1625a9f3d19d147",
"body": "Relax the HierarchyDistance constraint to accept a distance of zero. A distance\nof zero stops hierarchy traversal right at the pivot node - the pivot (or, in a\nsiblings traversal, each sibling) is returned without any of its descendants.\n\nThis fills a gap for children/fromRoot/fromNode, where there \n[…]\nthrough which\nevery API funnels (EvitaQL parser, gRPC EvitaQL-text re-parse, GraphQL/REST\ndescriptor construction), so relaxing it to `>= 0` (negatives still rejected)\nunblocks all of them.\n\nRef: #499",
"is_bot": false,
"headline": "feat: allow distance(0) in hierarchy stopAt",
"author_name": "Jan Novotný",
"author_login": "novoj",
"committed_at": "2026-07-18T11:27:09Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "9842164c726acec1dc8b11bb2c3756398ea1a252",
"body": "…cli-soft-fail\n\nfix: soft-fail the release-notes path so a transient blip can't skip release assets",
"is_bot": false,
"headline": "Merge pull request #1294 from FgForrest/1291-release-pipeline-claude-…",
"author_name": "Jan Novotný",
"author_login": "novoj",
"committed_at": "2026-07-18T10:37:16Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "a853548db9f08fed03b42d359b6c74f28194d82f",
"body": "…release assets\n\nThe Claude Code CLI installer hard-failed the release-notes-enrichment\nblock on a cold-cache network blip. Because every downstream step\n(including the dist/artifact uploads and, transitively, the Docker\npublish workflow via workflow_run) was gated on the job's overall\nsuccess(), on\n[…]\n\n\nWith this, any failure in the notes path degrades to the skeleton\nbody instead of aborting the release, and the job's conclusion stays\nsuccess so the Docker publish workflow still fires.\n\nRef: #1291",
"is_bot": false,
"headline": "fix: soft-fail the release-notes path so a transient blip can't skip …",
"author_name": "Jan Novotný",
"author_login": "novoj",
"committed_at": "2026-07-18T10:17:03Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "9b672fe166b52be7b4cce55841f0dad9054b26d9",
"body": "…uption\n\nfix: prevent and diagnose overlapping-leaf-page corruption in warm-up paged index flushes",
"is_bot": false,
"headline": "Merge pull request #1293 from FgForrest/fix-warmup-page-baseline-corr…",
"author_name": "Jan Novotný",
"author_login": "novoj",
"committed_at": "2026-07-18T10:07:53Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "887cf78142273881ad41cddee393bbb9610dafd4",
"body": "…and-export-of-in-memory-on-disk-recordings-plus-bug-hunt-jmh-performance-hardening\n\nfeat: on-demand export of buffered traffic recording + ring-buffer bug hunt + JMH hardening",
"is_bot": false,
"headline": "Merge pull request #1292 from FgForrest/1282-traffic-recording-on-dem…",
"author_name": "Jan Novotný",
"author_login": "novoj",
"committed_at": "2026-07-18T10:05:09Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "2760db4c9a090b196339138515b056edf9cbd95e",
"body": "- make WarmUpDataStoreMemoryBuffer.flushFailure volatile: the catalog buffer is\n poisoned from a flush-future completion callback that may run off the writer\n thread, while the writer reads the field at collect time\n- reword the flush-failure refusal to be buffer-generic, since the buffer backs\n \n[…]\nollection flush is deliberate so\n an Error mid-flush still poisons the buffer\n- clarify the livePagesOf test-helper JavaDoc and add a direct\n pendingLivePageSequences staged-before-publish unit test",
"is_bot": false,
"headline": "refactor: address review feedback on warm-up flush corruption fix",
"author_name": "Jan Novotný",
"author_login": "novoj",
"committed_at": "2026-07-18T10:01:47Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "6d5865881e988d1edf8b428f1dbad943bbaacc82",
"body": "The on-demand gRPC traffic-recording export test\n(shouldExportTrafficRecordingOverGrpcAndFetchTheResultingZip) started\nrecording and immediately generated traffic, but startRecording only\nsubmits an asynchronous TrafficRecorderTask to the scheduler and returns\nbefore the rich recorder is installed. \n[…]\nfic, guaranteeing recording is active first.\n\nVerified: 15/15 green under nproc CPU hogs (was intermittently empty);\ntraffic_engine|grpc suite unchanged at 501 tests, 0 failures, 0 errors.\n\nRef: #1282",
"is_bot": false,
"headline": "fix: de-flake gRPC traffic-export test and harden recorder activation",
"author_name": "Jan Novotný",
"author_login": "novoj",
"committed_at": "2026-07-18T09:47:17Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "4e2db027090091800769f01f5e274ee0455625d6",
"body": "… paged index flushes\n\nA warm-up (bulk re-index) flush never reaches a transactional commit-merge, so the\nPageStreamRegistry's published live-page baseline stayed empty for the whole re-index.\nA leaf merge then left the dropped page both unremoved on disk and still listed on a\nPAGED root that was sk\n[…]\nealthy flush pays\n nothing.\n\nTests: per-index warm-up-flush merge repros, a transactional merge-flush-failure suspend\ntest, a mock-level suspension test, and tree-level overlap-diagnostic assertions.",
"is_bot": false,
"headline": "fix: prevent and diagnose overlapping-leaf-page corruption in warm-up…",
"author_name": "Jan Novotný",
"author_login": "novoj",
"committed_at": "2026-07-18T09:10:04Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "9b85dd70804e8d92bdd4e38d8b67748234a3cbb3",
"body": "Two dev tests brought in by the latest dev merge fail intermittently under\nCI load. Both are test-side timing issues, not product regressions - the\nconcurrency guard and the compaction/WAL machinery are correct.\n\nConcurrentSessionAccessTest.shouldRejectConcurrentAccessToReadWriteSession:\nthe writer \n[…]\n catalog/collection files, yielding \"expected true but was false\" under\nload. It now polls (bounded, 60s) for the same background compaction,\nmirroring the WAL wait loop directly above it.\n\nRef: #1282",
"is_bot": false,
"headline": "test: de-flake session-guard and time-travel tests merged from dev",
"author_name": "Jan Novotný",
"author_login": "novoj",
"committed_at": "2026-07-18T08:27:08Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "4b18ca706dcf4f14e4cbfa519c01cc2fba132f1f",
"body": "…-on-demand-export-of-in-memory-on-disk-recordings-plus-bug-hunt-jmh-performance-hardening",
"is_bot": false,
"headline": "Merge remote-tracking branch 'origin/dev' into 1282-traffic-recording…",
"author_name": "Jan Novotný",
"author_login": "novoj",
"committed_at": "2026-07-18T07:50:44Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "655e99c97689adffdd0f5f211dbdac72a5c23ffe",
"body": "The stream tracks its own ring-buffer position to decide when to wrap\nback to the start of the region. The previous mark/reset overrides\nforwarded to the delegate file stream only, leaving that position out of\nstep after a reset - which would silently read past the physical end of\nthe ring-buffer window into unrelated bytes. markSupported() now reports\nfalse and reset() fails fast, turning a silent-corruption trap into a\nclear \"unsupported\" signal for any future caller.\n\nRef: #1282",
"is_bot": false,
"headline": "fix: make RingBufferInputStream mark/reset explicitly unsupported",
"author_name": "Jan Novotný",
"author_login": "novoj",
"committed_at": "2026-07-18T07:50:35Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "b79bee0a8b20f4d84c178918e3eeade4c61d076c",
"body": "… bounds\n\nAddresses the deep-review findings on #1292:\n\n- OffHeapTrafficRecorder.drainFinalizedSessionsToDisk() now returns a finalized\n session's still-held memory blocks on ANY append failure, not only\n MemoryNotAvailableException. A mid-session UnexpectedIOException (disk write\n error) previou\n[…]\ninitely.\n- RingBufferInputStream.skip/skipNBytes reduce n modulo the buffer size before\n advancing, so an adversarial near-Long.MAX_VALUE n cannot overflow position past\n the wrap guard.\n\nRef: #1282",
"is_bot": false,
"headline": "fix: harden traffic ring-buffer drain, span-lock fairness, and export…",
"author_name": "Jan Novotný",
"author_login": "novoj",
"committed_at": "2026-07-17T22:17:33Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "bbb11313fb02b35bd7657685996d0275b49701c7",
"body": "… metadata\n\n- RingBufferInputStream.skip/skipNBytes now skip nothing and return 0 for a non-positive\n n, instead of walking position backwards past the wrap guard into a negative seek.\n- metadata.txt in both the on-demand export and streaming recorder sinks is written with\n an explicit UTF-8 chars\n[…]\nfficRecordingExportTaskTest doc/display/message strings that claimed a\n one-.bin-per-session layout; the export chunks sessions by configured size.\n\nAddresses the Copilot review on #1292.\n\nRef: #1282",
"is_bot": false,
"headline": "fix: honor InputStream skip contract and pin UTF-8 for traffic export…",
"author_name": "Jan Novotný",
"author_login": "novoj",
"committed_at": "2026-07-17T21:37:28Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "58876eed6cdfc35173070e92fb4722bb29cd6432",
"body": "Undoes the branch-local version isolation (2026.2.1282-SNAPSHOT) applied in\ndac3e0cd6 and d3fdcc916, which existed only to keep local installs on this branch\nfrom clobbering shared ~/.m2 SNAPSHOT artifacts used by concurrent agent sessions\non other branches. Merging it would have set the wrong version on dev.\n\nRef: #1282",
"is_bot": false,
"headline": "chore: restore reactor version to 2026.2.RC1-SNAPSHOT",
"author_name": "Jan Novotný",
"author_login": "novoj",
"committed_at": "2026-07-17T14:52:20Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "33ccb1ce368e10e8557ba9fae427ec8262310b99",
"body": "Adds an on-demand export of the currently buffered traffic-recording window,\nindependent of the existing start/stop streaming recorder task. Callers trigger\nExportTrafficRecording over the gRPC traffic-recording API and download the\nresulting ZIP through the file-fetch API; the export takes a consis\n[…]\non file\n\nAdds a JMH suite covering the write, read, flush and index paths plus an\nexport-interference benchmark, and cuts 656-712 B/op from recordQuery by avoiding\na redundant label merge.\n\nRef: #1282",
"is_bot": false,
"headline": "feat: on-demand export of buffered traffic recording",
"author_name": "Jan Novotný",
"author_login": "novoj",
"committed_at": "2026-07-17T14:47:22Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "c1f9a6274ea21f7ae742d417191edef832cfe2a6",
"body": "…scope-maintenance-dev\n\nBackport of #1288 to dev: reflected reference maintenance across LIVE/ARCHIVED scopes",
"is_bot": false,
"headline": "Merge pull request #1290 from FgForrest/1288-fix-reflected-reference-…",
"author_name": "Jan Novotný",
"author_login": "novoj",
"committed_at": "2026-07-17T13:53:41Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "a446ad63514be10abfbfdef0c9548497636a736f",
"body": "…stale test JavaDoc\n\nContainerizedLocalMutationExecutor: drop the unnecessary EntitySchemaDecorator\ndowncast when resolving the reflected counterpart schema. getReference(...) is a\ndefault method on EntitySchemaContract, so it is called directly on the value\nreturned by getEntitySchema(...) with no \n[…]\ns a theoretical ClassCastException.\n\nEvitaArchivingTest: reword the two nested-class JavaDocs from \"Missing E2E\ncoverage\" to \"End-to-end coverage\" now that those scenarios are implemented.\n\nRef: #1288",
"is_bot": false,
"headline": "refactor: address PR #1290 review round 3 - drop redundant cast, fix …",
"author_name": "Jan Novotný",
"author_login": "novoj",
"committed_at": "2026-07-17T13:35:26Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "4e020985cee422d2c2138720305783dec5dcdf97",
"body": "… for absent index\n\n- Replace the HTML `<b>` tag introduced in the constructor JavaDoc with Markdown\n (`**all**`), per the project's JavaDoc-Markdown-only rule.\n- Record a deterministic placeholder transactional id for a scope whose GLOBAL index\n does not exist yet, so the cache-invalidation hash changes once the index is created\n later and a previously cached empty superset is not incorrectly reused.\n\nRef: #1288",
"is_bot": false,
"headline": "fix: address PR #1290 review - Markdown JavaDoc and cache placeholder…",
"author_name": "Jan Novotný",
"author_login": "novoj",
"committed_at": "2026-07-17T13:15:11Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "c9a318e05ab89d3c5e5982bf949520e1b74a278c",
"body": "…imaryKeyTranslatingFormula\n\nAddresses PR #1290 review: the constructor and referencedEntitySuperSet field\nJavaDoc still described the old \"provided scopes where the reference is indexed\"\nbehaviour. Updated to state the superset is unioned across all scopes and that\nfor a managed target it is always present (possibly empty), never null.\n\nRef: #1288",
"is_bot": false,
"headline": "docs: clarify all-scope superset behaviour in ReferencedEntityIndexPr…",
"author_name": "Jan Novotný",
"author_login": "novoj",
"committed_at": "2026-07-17T12:49:50Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "5fe23d9c712fdaccc8f5ce85d28a1e81c1f4c442",
"body": "Backport to dev of the reflected-reference cross-scope maintenance fix\n(release_2026-1, #1288 / PR #1289), adapted to the dev engine.\n\nReflected reference maintenance assumed the holder and the target share a\nsingle scope. When the participating entities live in - or move between -\nthe LIVE and ARCH\n[…]\nthe generalized\ntargetEntityType/isTargetManaged formula). Updates the pre-existing\nshouldRecreateReflectedReferencesInSeparateScopes test to the new\ncross-scope visibility (invariant I1).\n\nRef: #1288",
"is_bot": false,
"headline": "fix: maintain reflected references correctly across LIVE/ARCHIVED scopes",
"author_name": "Jan Novotný",
"author_login": "novoj",
"committed_at": "2026-07-17T12:28:44Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "2fac0b066807b416d1bee30f15e408850440fe5d",
"body": "…ansactional trees\n\nInternal B+ tree nodes are sized by internalNodeBlockSize (I) while leaves are\nsized by valueBlockSize (V); production configs derive I = V/2-1. The split and\npaged-reassembly paths conflated the two, so disk-loaded index trees corrupted on\nthe senesi dataset (deterministic Array\n[…]\n clean end-to-end (273 transactions, catalog ALIVE at\nv333) and the flushed state cold-reloads clean. The corrected internal fan-out\nis perf-neutral, so the tuned block sizes (256 / 512) are retained.",
"is_bot": false,
"headline": "fix: correct B+ tree internal-node block-size confusion across all tr…",
"author_name": "Jan Novotný",
"author_login": "novoj",
"committed_at": "2026-07-16T15:05:29Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "71dc968617c8898157469fd3394f0a05b48295a3",
"body": "fix: carve out granular conflict items from the coarse entity conflict scope",
"is_bot": false,
"headline": "Merge pull request #1287 from FgForrest/503-granular-conflict-carveout",
"author_name": "Jan Novotný",
"author_login": "novoj",
"committed_at": "2026-07-16T13:00:05Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "cc597cdd3dd509cf4fc2118eb79ca8a7395f60af",
"body": "Name the shared-surface decision at the two delta emission sites instead\nof passing an inverted boolean positionally, and surface it in the delta\nkeys' toString so a shared-surface delta no longer renders identically to\na carved-out one in conflict diagnostics. Correct the emission test class\nJavaDoc that still described the scope mutation as deliberately silent.\n\nNo behavioral change.\n\nRef: #503",
"is_bot": false,
"headline": "refactor: address review feedback on the conflict carve-out",
"author_name": "Jan Novotný",
"author_login": "novoj",
"committed_at": "2026-07-16T12:53:19Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "617a48fac6886aa23189255ba948e7c47a5470b3",
"body": "…t scope\n\nA per-item GRANULAR override (or a granularity-set dimension) promises to\nisolate concurrent writes of that item from writes touching other parts of\nthe same entity, but a sibling writer running under the coarse ENTITY\npolicy emitted the monolithic EntityConflictKey, which is an ancestor o\n[…]\nheir parent chain (sharedSurface flag) so a\nshared-surface delta still serializes against a coarse absolute writer\nwhile a carved-out delta stays isolated; delta accumulation is unaffected.\n\nRef: #503",
"is_bot": false,
"headline": "fix: carve out granular conflict items from the coarse entity conflic…",
"author_name": "Jan Novotný",
"author_login": "novoj",
"committed_at": "2026-07-16T12:32:02Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "e3e1d76814681ff7263e4aede911b88843aaff15",
"body": "evita_roaring_bitmap/pom.xml gates its surefire run behind the\nroaringBitmap.skipTests property, which defaults to false at the\nroot. ci-dev.yml and pr-review.yml both pass\n-DroaringBitmap.skipTests=true unless that module actually changed,\nbut ci-dev-documentation.yml never did, so every run of the\n[…]\ntests, making\nthe JUnit report show ~19.5k tests instead of just the doc suite.\n\nHardcode -DroaringBitmap.skipTests=true for this workflow, since it\nonly ever needs to validate documentation examples.",
"is_bot": false,
"headline": "fix: skip vendored RoaringBitmap suite in doc CI workflow",
"author_name": "Jan Novotný",
"author_login": "novoj",
"committed_at": "2026-07-16T10:48:49Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "8a11ae4ac4d2399f5bb6a98225e5abb3b146599e",
"body": "The thread-ownership guard in EvitaSessionProxy rejected any second\nthread entering any business method on any session, which broke the\nGraphQL API in production: it opens a single read-only session per\nquery operation and fans the root fields out to several\nrequest-executor threads in parallel (Asy\n[…]\n and\nEvitaSession.lastCall is volatile to prevent word-tearing; the\nintentionally non-atomic nestLevel is documented as consulted only\nunder transactions where single-threading is enforced.\n\nRef: #503",
"is_bot": false,
"headline": "fix: restrict session concurrency guard to read-write sessions",
"author_name": "Jan Novotný",
"author_login": "novoj",
"committed_at": "2026-07-16T10:33:34Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "d3fdcc91685b24337404b3adb0c126cd9b4b8c72",
"body": "Adds the JMH suite required by PLAN.md Phase 0 (write throughput/\nallocation, flush drain cost, index rebuild latency, forward vs. reverse\nread) plus the recorded baseline numbers, before any production code\nchanges. Benchmark 5 (export interference) is deferred to land with\nPhase 1a per the plan, since it needs the export path to exist.\n\nAlso adds the missing evita_traffic_engine dependency to\nevita_performance_tests, needed to reach these classes at all.\n\nRef: #1282",
"is_bot": false,
"headline": "test: add Phase 0 JMH baseline benchmarks for traffic recording export",
"author_name": "JNO",
"author_login": null,
"committed_at": "2026-07-16T10:14:46Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "dac3e0cd61ead2497bd24cd12ee0c33526d5cb2d",
"body": "Set the reactor version to 2026.2.1282-SNAPSHOT (from 2026.2.RC1-SNAPSHOT)\nvia mvn versions:set across all modules, so local installs on this branch\ndo not clobber shared ~/.m2 SNAPSHOT artifacts used by other concurrent\nagent sessions on other branches.\n\nRef: #1282",
"is_bot": false,
"headline": "chore: isolate branch build version to avoid parallel-agent conflicts",
"author_name": "JNO",
"author_login": null,
"committed_at": "2026-07-16T10:14:35Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "7133abfe451d01f060032bb0b9a6a3ec44f67521",
"body": "…lict-resolution\n\nfeat: granular transaction conflict resolution (#503)",
"is_bot": false,
"headline": "Merge pull request #1286 from FgForrest/503-granular-transaction-conf…",
"author_name": "Jan Novotný",
"author_login": "novoj",
"committed_at": "2026-07-16T08:37:16Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "9c8c294d331c156ca22c7be616cd4065c3e066cb",
"body": "…tion unions\n\nThe 5 conflict-resolution schema mutations (ModifyEntitySchemaConflictResolution,\nModifyCatalogSchemaConflictResolution, and the Set*SchemaConflictResolutionOverride\ntrio) were registered as output object types by the catalog GraphQL/REST builders and\nwere members of the input aggregat\n[…]\n consistent with how every other schema\nmutation is already exposed there. Guarded by a content assertion in\nSystemGraphQLDslSchemaFunctionalTest that the built system schema exposes all 5.\n\nRef: #503",
"is_bot": false,
"headline": "fix: expose conflict-resolution schema mutations in GraphQL/REST muta…",
"author_name": "Jan Novotný",
"author_login": "novoj",
"committed_at": "2026-07-16T08:34:07Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "c4c316b292af9485b9ab07ad3e23cc9a09cd6e45",
"body": "EntitySchema.differsFrom and CatalogSchema.differsFrom omitted the schema-level\nconflictResolution field, so a schema changed only via\nModifyEntitySchemaConflictResolutionMutation / ModifyCatalogSchemaConflictResolutionMutation\n(the mutation that alters the entity- or catalog-level conflict resolution) compared\nequal to its predecessor and the change was reported as \"no difference.\" Both methods\nnow compare conflictResolution via Objects.equals.\n\nRef: #503",
"is_bot": false,
"headline": "fix: detect conflict-resolution changes in schema differsFrom comparison",
"author_name": "Jan Novotný",
"author_login": "novoj",
"committed_at": "2026-07-16T08:34:07Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "05d50a4d2a51d283c5dfbcd14c86a092ad5fb8b0",
"body": null,
"is_bot": false,
"headline": "Merge branch 'dev' into 503-granular-transaction-conflict-resolution",
"author_name": "Jan Novotný",
"author_login": "novoj",
"committed_at": "2026-07-16T07:36:23Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "791e82c1430f0f7434c962786b8ed956f454052c",
"body": "Makes the skill and its tools/consolidate-version-bumps.sh usable from any\ncheckout (not just the author's laptop) and prepares it for headless/CI use:\n\n- tool: drop the bash-4 mapfile dependency (stock macOS ships bash 3.2);\n auto-derive the repo (gh repo view) and default branch instead of hardco\n[…]\ntively' section (branch\n protection, token scopes, non-interactive overrides); add a progress\n checklist; generalise instance-specific references (commit hash, rtk, PR\n numbers); trim allowed-tools",
"is_bot": false,
"headline": "chore: harden consolidate-version-bumps skill for portability and CI",
"author_name": "Jan Novotný",
"author_login": "novoj",
"committed_at": "2026-07-16T07:35:46Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "81876d77ee2a6e03945a02031ca1a8568f0d6758",
"body": "RingBuffer.findFirstEntryAtOrAfter resolves an inexact boundary to its insertion\npoint; the interior-gap case (boundary between two retained entries) was\npreviously untested, yet it is exactly the state a rolled-back transaction's\nreserved version leaves between two committed ones. Adds a non-wrappe\n[…]\narAllAfter(12)\nkeeps 10/11 and removes 13) and a wrapped-around counterpart\n(ChangeCaptureRingBufferTest) exercising the same insertion-point handling through\nthe two-segment clearing path.\n\nRef: #503",
"is_bot": false,
"headline": "test: cover ring-buffer clearAllAfter with a boundary in a version gap",
"author_name": "Jan Novotný",
"author_login": "novoj",
"committed_at": "2026-07-16T07:30:01Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "7d75f426ff817614ebb508cdcca40c61908edc3c",
"body": "…g schema\n\nidentifyConflictsInOldCommittedTransactions recomputed the conflict keys of\nring-buffer-evicted committed transactions with the bare engine-default\nresolution, not the schema-effective per-entity resolution the WAL-write path and\nthe conflictException() diagnostics use. This fallback exis\n[…]\nschema-aware ConflictGenerationContext against the living\ncatalog's current schema, matching conflictException() so the recompute verdict\nand the thrown diagnostics agree on the resolution.\n\nRef: #503",
"is_bot": false,
"headline": "fix: resolve aged-out conflict recompute against the effective catalo…",
"author_name": "Jan Novotný",
"author_login": "novoj",
"committed_at": "2026-07-16T07:29:51Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "4214c61f34bab41acd7f402e94883d2eb0878791",
"body": "…rimary key\n\nAttributeDeltaConflictKey.aggregationKey() and its reference-attribute sibling key\nthe commit-time accumulation slot by entity primary key. That key is always\nresolved before accumulation - a generated key is assigned by\nEntityCollection.verifyPrimaryKeyAssignment during upsert, before \n[…]\nDeltasPerEntityPrimaryKeyNotAcrossEntities\n(a committed delta on one entity must not count against another entity's incoming\ndelta) and ConflictKeyTest guard tests for both delta key types.\n\nRef: #503",
"is_bot": false,
"headline": "refactor: guard commutative delta aggregation against an unresolved p…",
"author_name": "Jan Novotný",
"author_login": "novoj",
"committed_at": "2026-07-16T07:29:34Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "46ee5cd609d3afe21b41528f7b6cb5ab02194510",
"body": "Adds the consolidate-version-bumps skill and its shell toolkit\n(tools/consolidate-version-bumps.sh) that automate assessing Dependabot\nbump PRs, verifying GitHub Action SHA pins resolve from their release tags,\nconsolidating the bumps into a single commit, and reviewing/resolving\nDependabot security alerts.",
"is_bot": false,
"headline": "chore: add consolidate-version-bumps skill and tooling",
"author_name": "Jan Novotný",
"author_login": "novoj",
"committed_at": "2026-07-16T07:05:47Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "81620403d7b5809a9768b08fe5669aaf9f39a87a",
"body": "Resolves two low-severity Logback deserialization advisories flagged by\nDependabot against logback-core:\n- CVE-2026-9828 (GHSA-p47f-322f-whfh): deserialization of untrusted data,\n first patched in 1.5.33\n- CVE-2026-10532 (GHSA-jhq6-gfmj-v8fx): object injection through the\n HardenedObjectInputStre\n[…]\nback-classic and\nlogback-core are released in lockstep) and requires no code changes; evitaDB\nuses Logback purely as the SLF4J logging backend, so the affected\nserialization receivers are not exposed.",
"is_bot": false,
"headline": "fix(security): bump logback 1.5.32 -> 1.5.34",
"author_name": "Jan Novotný",
"author_login": "novoj",
"committed_at": "2026-07-16T06:35:25Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "19ffbe21902498ed02c709524ffa19612fa66a96",
"body": "Maven:\n- software.amazon.awssdk:s3 2.46.1 -> 2.47.5 (functional tests, test scope)\n- bouncyCastle.version 1.84 -> 1.85\n- opentelemetry.version 1.62.0 -> 1.64.0\n- maven-source-plugin 3.3.1 -> 3.4.0\n- net.javacrumbs.json-unit:json-unit-assertj 5.1.0 -> 6.0.1 (functional,\n documentation and long-runni\n[…]\nassertThatJson).\n\nopentelemetry moves 1.62.0 -> 1.64.0 while opentelemetry.semconv stays at\n1.41.1, which remains compatible.\n\nRef: #1270, #1271, #1272, #1273, #1274, #1275, #1276, #1277, #1278, #1279",
"is_bot": false,
"headline": "chore: bump Maven and GitHub Actions dependencies",
"author_name": "Jan Novotný",
"author_login": "novoj",
"committed_at": "2026-07-16T06:25:24Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "c038a2e1686cf3e2d8d0e01f2877eb60aaa6c838",
"body": "shouldSignalizeReadinessAndHealthinessCorrectly polled the readiness\nendpoint but issued the liveness and status probes as single requests.\nNetworkUtils.fetchContent returns an empty Optional on any non-2xx,\nsocket timeout or IO error, so a transient failure during the server's\npost-startup settling\n[…]\nuntil the body\nsatisfies its predicate. A server that never becomes healthy still\nreturns the last observed result and fails the following assertions, so\ngenuine regressions are not masked.\n\nRef: #503",
"is_bot": false,
"headline": "test: stabilize EvitaServerTest readiness/liveness/status probing",
"author_name": "Jan Novotný",
"author_login": "novoj",
"committed_at": "2026-07-16T06:00:56Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "717613b7933b0095783262e532dbf83ad3ea76e2",
"body": "Incorporate 21 upstream commits from dev to keep the branch mergeable.\nThe merge is textually clean; three call sites needed adapting to the\nbranch's conflict-resolution-aware _internalBuild factories (trailing\nConflictResolutionOverride) — call sites only exercised by the full\ntest + performance re\n[…]\nsting branch caller): AttributeSchema _internalBuild\n\nAll pass ConflictResolutionOverride.INHERITED (the no-opinion default).\nFull reactor test-compile (-P unitAndFunctional,full) is green.\n\nRef: #503",
"is_bot": false,
"headline": "Merge branch 'dev' into 503-granular-transaction-conflict-resolution",
"author_name": "Jan Novotný",
"author_login": "novoj",
"committed_at": "2026-07-16T05:29:48Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "d760fc166facbfe333b053506101de72cc16fb84",
"body": "perf/fix: upsert allocation cuts + transactional-structure and gRPC-session hardening",
"is_bot": false,
"headline": "Merge pull request #1284 from FgForrest/warmup-alloc-and-tx-hardening",
"author_name": "Jan Novotný",
"author_login": "novoj",
"committed_at": "2026-07-16T05:18:11Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "5e09e3b76823a2cca26c08ec161543c075f34a19",
"body": "Resolves the single conflict in ConstraintSchemaBuilder.buildGroupChildren:\ndev's PR #1281 landed the same GROUP-constraint-children feature independently,\nso the two implementations converged. Kept dev's (mainline) form — functionally\nidentical to this branch's version (same JavaDoc, same childData\n[…]\ntes auto-merged\n(both sides added the identical line).\n\nDev's new groupHaving regression tests now cover the converged implementation;\nverified green (2/0/0) and the full merged tree installs cleanly.",
"is_bot": false,
"headline": "Merge branch 'dev' into warmup-alloc-and-tx-hardening",
"author_name": "Jan Novotný",
"author_login": "novoj",
"committed_at": "2026-07-16T05:17:34Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "06fcc4ec8b25e03267dabdb0a0ada99c3e20b05a",
"body": "Extend the 'Addressing Review Comments' procedure with a final step that\nmarks a review thread resolved once it has been handled. Documents that\nresolution is only possible through the GraphQL resolveReviewThread\nmutation (REST has no endpoint), how to list unresolved thread node ids,\nand cautions against bulk-resolving threads that were never read.",
"is_bot": false,
"headline": "docs: add review-thread resolution step to git workflow",
"author_name": "Jan Novotný",
"author_login": "novoj",
"committed_at": "2026-07-16T05:16:03Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "0ca252f55dc7f4cb918f228d7c61d9d555e09f09",
"body": "…kecatalogalivewithprogress-fail-with-unauthenticated-missing-from-session-interceptor-whitelist\n\nfix: cannot make catalog alive using specific gRPC service call without session",
"is_bot": false,
"headline": "Merge pull request #1285 from FgForrest/1283-grpc-makecatalogalive-ma…",
"author_name": "Lukáš Hornych",
"author_login": "lukashornych",
"committed_at": "2026-07-16T05:11:31Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "c1c67835f55d9ef7ebc5b59abc0e4c46127fa0d2",
"body": "Regenerate the JFR event and metrics reference documentation from\nEvitaJfrEventRegistry so it includes TransactionConflictEvent\n(io_evitadb_transaction_transaction_conflict_total) together with its\nconflictPolicy / conflictScope / resolutionLayer metric labels. The\nevent was added with the feature but the generated references had not\nbeen refreshed.\n\nRef: #503",
"is_bot": false,
"headline": "docs: document the transaction-conflict JFR event and metric",
"author_name": "JNO",
"author_login": null,
"committed_at": "2026-07-16T05:02:23Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "4e3963013653ad776c0d948b160ffdacd48040dc",
"body": "The ping/idle Javadoc on ApiOptions and ClientConnectionOptions documents that a\nnon-zero ping interval must be at least Armeria's 1000 ms minimum and that a\nnegative value is invalid, but neither record enforced it: a positive sub-1000\nping (and, on the client, any out-of-range value) was forwarded\n[…]\nngle\n`instanceof ClosedStreamException` check already classifies ClosedSessionException\nas a transport failure (it is a final subclass), addressing a review question\nwithout adding a redundant branch.",
"is_bot": false,
"headline": "fix: enforce the documented keep-alive ping/idle configuration contract",
"author_name": "Jan Novotný",
"author_login": "novoj",
"committed_at": "2026-07-16T04:54:31Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "a4c719185df3826efca7ad1fc7d7cfe9fa2374df",
"body": "…ut session\n\nRefs: #1283",
"is_bot": false,
"headline": "fix: cannot make catalog alive using specific gRPC service call witho…",
"author_name": "Lukáš Hornych",
"author_login": "lukashornych",
"committed_at": "2026-07-16T04:41:20Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "8e670519edd11c9dde65abba70b1adadf8ce624a",
"body": "…zers\n\nAdd EvitaJfrEventRegistryTest asserting the transaction-conflict JFR event is\nregistered and resolvable by FQN (the JFR recording lookup path) — the registry\nhad no test, so the newly-registered TransactionConflictEvent was unverified.\n\nNon-behavioral REST cleanup: correct the copy-paste \"ser\n[…]\nhe catalog and entity schema JSON serializers, shorten a\nfully-qualified {@link}, drop three single-type imports already covered by a\nsame-package wildcard, and remove a stray double space.\n\nRef: #503",
"is_bot": false,
"headline": "test: cover JFR conflict-event registration, tidy REST schema seriali…",
"author_name": "JNO",
"author_login": null,
"committed_at": "2026-07-16T02:01:12Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "904c8b654020b3588acc1ab026b527874b916ec0",
"body": "The attribute-scoped delegating converters (both the gRPC and REST/GraphQL\nresolver variants) and the reference-attribute input aggregate register\nSetAttributeSchemaConflictResolutionOverrideMutation, but no test routed a\nconflict override through those specific converters — existing coverage routed\n[…]\ngregateDescriptor (it linked EntitySchemaMutation\nthough it aggregates LocalCatalogSchemaMutation) and drop a dead\nGrpcGranularConflictPolicy import in the gRPC ConflictResolutionConverter.\n\nRef: #503",
"is_bot": false,
"headline": "test: cover attribute delegating-converter conflict-override routing",
"author_name": "JNO",
"author_login": null,
"committed_at": "2026-07-16T01:13:09Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "25ac8a20c79abf282a86da87bba4cdd33918c256",
"body": "…tion\n\nAdd backward-compatibility read coverage for the five immediate-pre-conflict\n(_2026_1) schema serializers (Attribute, GlobalAttribute, EntityAttribute,\nAssociatedData, EntitySchema), asserting each defaults the absent conflict field\nto INHERITED so released 2026.1 on-disk data stays readable \n[…]\n with a non-default override, guarding\nagainst a serializer silently dropping the override on the write path.\n\nAlso drop a dead java.util.Map.Entry import in CatalogSchemaSerializer_2026_1.\n\nRef: #503",
"is_bot": false,
"headline": "test: cover pre-conflict schema reads and conflict-override serializa…",
"author_name": "JNO",
"author_login": null,
"committed_at": "2026-07-16T00:54:24Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "238fcf0976251ef016a59a846335de86e309c8ec",
"body": "DefaultIsolatedWalService gated its catalog-wide conflict fallback on the base\nengine policy (this.conflictResolution.policy()) rather than the effective\ncatalog-level policy. Because no mutation ever emits a CatalogConflictKey, this\nfallback is the only source of the catalog conflict key. With the \n[…]\n when absent, mirroring\nConflictGenerationContext.resolvedResolution), and gate both the write and\ngetConflictKeys fallback sites on it. No-op in global-backed mode\n(catalogSchema == null).\n\nRef: #503",
"is_bot": false,
"headline": "fix: resolve catalog conflict fallback from the effective catalog policy",
"author_name": "JNO",
"author_login": null,
"committed_at": "2026-07-16T00:54:13Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "19c16cb6fbd9c8b9b130e5e8826fb6f39036f576",
"body": "…ssion\n\nNon-behavioral cleanup of the data annotation/mutation files touched by the\ngranular conflict-resolution feature:\n\n- correct the EntityUpsertMutation class JavaDoc, which was copy-pasted from\n EntityRemoveMutation and described removal semantics (and dropped a broken\n sentence); drop the n\n[…]\n to tab indentation (whitespace only)\n- document that SetEntityScopeMutation.collectConflictKeys returns an empty\n stream deliberately (covered by the entity-level fallback), not as a stub\n\nRef: #503",
"is_bot": false,
"headline": "refactor: tidy data-mutation docs and imports around conflict-key emi…",
"author_name": "JNO",
"author_login": null,
"committed_at": "2026-07-16T00:07:14Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "1a6a9a6955ad47eacc7648497f02abcecc561a44",
"body": "EntityRemoveMutation.collectConflictKeys resolved the coarse conflict policy by\ncalling context.coarsePolicy() directly, without entering the per-entity\nwithEntityType(...) scope that EntityUpsertMutation uses. In schema-aware mode the\nper-entity effective resolution is only populated inside that sc\n[…]\nelve were directly covered), including the per-entity removal-scope regression\nguard. The end-to-end granular remove/update race tests confirm the emission gap is\nclosed at detection level.\n\nRef: #503",
"is_bot": false,
"headline": "fix: resolve conflict policy per-entity on entity removal",
"author_name": "JNO",
"author_login": null,
"committed_at": "2026-07-16T00:07:02Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "84097aa294b4856855c574e0a15ccbd9ff40c0e0",
"body": "…avior\n\nAdd dedicated behavioral unit tests for the three conflict-resolution schema\nmutations whose existing coverage was serialize/round-trip only (none exercised\nmutate/combineWith): ModifyCatalogSchemaConflictResolutionMutation,\nModifyEntitySchemaConflictResolutionMutation and\nSetReferenceSchema\n[…]\ncted-reference @throws on the reference override mutation, and\ndrop dead java.util.Set / ConflictPolicy imports the collectConflictKeys signature\nchange left behind in six mutation classes.\n\nRef: #503",
"is_bot": false,
"headline": "test: cover catalog/entity/reference conflict-resolution mutation beh…",
"author_name": "JNO",
"author_login": null,
"committed_at": "2026-07-15T23:18:32Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "db4b058406c67d55e8d553d37b6d5c88b637c4ed",
"body": "…ersion\n\nCreateAttributeSchemaMutationConverter and CreateGlobalAttributeSchemaMutationConverter\nread the representative flag when converting from gRPC but never wrote it when\nconverting to gRPC, so an attribute schema created with representative=true had the\nflag silently dropped whenever the mutat\n[…]\nld order)\nand assert the flag now survives a full round-trip.\n\nThis is a pre-existing asymmetry unrelated to the conflict-resolution feature,\nfound while reviewing the same converter files.\n\nRef: #503",
"is_bot": false,
"headline": "fix: carry the representative flag through attribute Create gRPC conv…",
"author_name": "JNO",
"author_login": null,
"committed_at": "2026-07-15T22:49:16Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "429e52076d30e916fcaec4365bf3fe7a976e1b22",
"body": "…tation docs\n\nAdd dedicated unit tests for the two new per-item conflict-resolution override\nmutations (SetAttributeSchemaConflictResolutionOverrideMutation and\nSetAssociatedDataSchemaConflictResolutionOverrideMutation), mirroring their\nSet*Mutation siblings: mutate() at schema/entity/catalog level,\n[…]\narameter\nwas undocumented, unlike its associated-data sibling), and fix copy-paste comments\nin the attribute-family replaceAttributeIfDifferent methods that carried\nassociated-data wording.\n\nRef: #503",
"is_bot": false,
"headline": "test: cover conflict-resolution override mutations, tidy attribute-mu…",
"author_name": "JNO",
"author_login": null,
"committed_at": "2026-07-15T22:48:59Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "a0730268b6539860a21b9bc12843b29563c53a7f",
"body": "Run the progress callbacks on an inline Runnable::run executor so they complete\ndeterministically instead of racing a real thread pool under CPU-saturated parallel\ntest execution, while keeping one real-pool test for genuine concurrency coverage.",
"is_bot": false,
"headline": "test: stabilize ProgressRecordTest",
"author_name": "Jan Novotný",
"author_login": "novoj",
"committed_at": "2026-07-15T22:31:00Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "2b62582358ccee0544dee717d1568fc4f4c7af61",
"body": "A gRPC transport failure mid-session-call (CANCELLED / UNAVAILABLE /\nDEADLINE_EXCEEDED, or a wrapped Armeria ClosedSessionException / ClosedStreamException)\norphaned the server-side invocation; the client's try-with-resources close then\nraced a remote close against that orphan and produced a\nConcurr\n[…]\nn inactivity. Adds the\nengine-side ConcurrentSessionAccessException and fixes the change-data-capture\nregister-then-mutate ordering so a freshly registered subscription cannot miss the\nfirst mutation.",
"is_bot": false,
"headline": "fix: harden the gRPC session cancellation cascade and CDC ordering",
"author_name": "Jan Novotný",
"author_login": "novoj",
"committed_at": "2026-07-15T22:31:00Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "880e6a142a91ac4a11598afde36654bd1e8d9336",
"body": "Under concurrent write load the trunk-incorporation stage could misread a\ndurably-written transaction as \"already processed\" and hang: when the WAL mutation\nstream went dry, MutationSupplier returned a silent null and processTransactions\ntreated it as \"someone else did it\", finalizing at a stale ver\n[…]\needy recovery/replay read still requires the checksum,\nso a genuinely torn tail is never delivered prematurely). The bounded wait spins\nbriefly and then parks, so a genuine stall no longer pins a CPU.",
"is_bot": false,
"headline": "fix: stop trunk incorporation spinning forever on a dry WAL read",
"author_name": "Jan Novotný",
"author_login": "novoj",
"committed_at": "2026-07-15T22:30:59Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "dd193f25de7daf7790c55d0a72667cf509ef8335",
"body": "…pe validation\n\nThe paged B+ tree persistence layout has never shipped in a released version, so\nno production catalog can carry a stale leaf-page twin; the only way one appears\nis a now-guarded writer bug. Silently healing such a state contradicts the\ndefensive-design rule, so healing is removed en\n[…]\nndex restore paths revert to plain assembly and, with the three index\nloaders, thread a structure-description string into the assembler diagnostics;\nmodule-info exports the new core.exception package.",
"is_bot": false,
"headline": "fix: fail fast on corrupt transactional data structures via dirty-sco…",
"author_name": "Jan Novotný",
"author_login": "novoj",
"committed_at": "2026-07-15T22:30:59Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "92d9a1dbe9a36d209939dc8f8732af35ef144516",
"body": "…verOptions record\n\nServerOptions.directExecutor was a test-only executor switch, yet because\nServerOptions is a public YAML-bound record it leaked as a user-settable\nserver.directExecutor config key. The engine genuinely needs to choose the\nimmediate-vs-real executor but cannot derive that from Evi\n[…]\n EvitaParameterResolver, replacing\nthe removed config key. The record's canonical-constructor arity drops from 11 to\n10 components (the accepted backward-compatibility break for this unreleased line).",
"is_bot": false,
"headline": "refactor: move the test-only directExecutor switch off the public Ser…",
"author_name": "Jan Novotný",
"author_login": "novoj",
"committed_at": "2026-07-15T22:29:59Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "0453052327315f754af1a6fbc34313a1bcf1687a",
"body": "…gurable\n\nBoth the server (ExternalApiServer) and the client (EvitaClient) hard-coded a\n1000 ms HTTP/2 keep-alive ping. Under production GC/CPU pauses a 1 s ping acts as\na probe frequency rather than a stall budget, so a slow-but-alive call could be\ntorn down mid-flight and surface to clients as a s\n[…]\nlient sets the idle timeout explicitly with keepAliveOnPing=true and logs\na warning when a custom pair would inadvertently disable the ping. Documents both\nknobs in the Java connector guide (en + cs).",
"is_bot": false,
"headline": "feat: make the gRPC keep-alive ping and connection idle timeout confi…",
"author_name": "Jan Novotný",
"author_login": "novoj",
"committed_at": "2026-07-15T22:29:59Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "97520879a4653d70d4e2c0b82e90731705ac2e46",
"body": "Constraint containers nested in a reference/facet scope could not target the\nreferenced GROUP entity: buildEntityChildren covered the referenced entity, but\nthere was no equivalent for the reference's group type.\n\nAdd ConstraintSchemaBuilder.buildGroupChildren — a GROUP-typed counterpart with\nno roo\n[…]\nOUP constraint only makes sense when nested in\na reference whose schema actually declares a referenced group type — and wire it\ninto the GraphQL and REST schema builders alongside the entity children.",
"is_bot": false,
"headline": "feat: expose GROUP constraint children in the GraphQL and REST schemas",
"author_name": "Jan Novotný",
"author_login": "novoj",
"committed_at": "2026-07-15T22:29:59Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "1afe2e66dc3ed3b2223beaef6b43d053d1b806cf",
"body": "The WARM_UP bulk upsert path was GC-bound: for every reference on every upserted\nentity, processReferenceAttributesWithDefaultValue() materialized the reference's\nfull attribute-key set into a fresh HashSet just to test membership of the\n(usually few) schema-declared default/mandatory attributes.\n\nR\n[…]\ne, consumed by LocalizedStringComparator), whose repeated\nrecomputation dominated CPU during localized attribute indexing; the cache is\nbounded and can be disabled with evita.collationKeyCache.size=0.",
"is_bot": false,
"headline": "perf: cut per-reference allocation on the entity upsert hot path",
"author_name": "Jan Novotný",
"author_login": "novoj",
"committed_at": "2026-07-15T22:29:59Z",
"body_truncated": true,
"is_coding_agent": false
}
],
"releases_count": 100,
"commits_last_year": 1545,
"latest_release_at": "2026-07-23T15:04:19Z",
"latest_release_tag": "v2026.1.20",
"releases_from_tags": false,
"days_since_last_push": 0,
"active_weeks_last_year": 52,
"days_since_latest_release": 0,
"mean_days_between_releases": 6.7
},
"community": {
"has_readme": true,
"has_license": true,
"has_description": true,
"has_contributing": false,
"health_percentage": 75,
"has_issue_template": false,
"has_code_of_conduct": true,
"has_pull_request_template": false
},
"ecosystem": {
"packages": [
{
"name": "io.evitadb:jacoco",
"exists": true,
"license": null,
"keywords": [],
"ecosystem": "maven",
"matches_repo": null,
"registry_url": "https://central.sonatype.com/artifact/io.evitadb/jacoco",
"is_deprecated": false,
"latest_version": "2026.1.20",
"repository_url": null,
"versions_count": 188,
"total_downloads": null,
"dependents_count": null,
"deprecation_note": null,
"maintainers_count": null,
"monthly_downloads": null,
"first_published_at": null,
"latest_published_at": "2026-07-23T15:13:11Z",
"latest_version_yanked": null,
"days_since_latest_publish": 0
},
{
"name": "io.evitadb:evita_api",
"exists": true,
"license": null,
"keywords": [],
"ecosystem": "maven",
"matches_repo": null,
"registry_url": "https://central.sonatype.com/artifact/io.evitadb/evita_api",
"is_deprecated": false,
"latest_version": "2026.1.20",
"repository_url": null,
"versions_count": 188,
"total_downloads": null,
"dependents_count": null,
"deprecation_note": null,
"maintainers_count": null,
"monthly_downloads": null,
"first_published_at": null,
"latest_published_at": "2026-07-23T15:13:01Z",
"latest_version_yanked": null,
"days_since_latest_publish": 0
},
{
"name": "io.evitadb:evita_query",
"exists": true,
"license": null,
"keywords": [],
"ecosystem": "maven",
"matches_repo": null,
"registry_url": "https://central.sonatype.com/artifact/io.evitadb/evita_query",
"is_deprecated": false,
"latest_version": "2026.1.20",
"repository_url": null,
"versions_count": 188,
"total_downloads": null,
"dependents_count": null,
"deprecation_note": null,
"maintainers_count": null,
"monthly_downloads": null,
"first_published_at": null,
"latest_published_at": "2026-07-23T15:13:12Z",
"latest_version_yanked": null,
"days_since_latest_publish": 0
},
{
"name": "io.evitadb:evita_common",
"exists": true,
"license": null,
"keywords": [],
"ecosystem": "maven",
"matches_repo": null,
"registry_url": "https://central.sonatype.com/artifact/io.evitadb/evita_common",
"is_deprecated": false,
"latest_version": "2026.1.20",
"repository_url": null,
"versions_count": 188,
"total_downloads": null,
"dependents_count": null,
"deprecation_note": null,
"maintainers_count": null,
"monthly_downloads": null,
"first_published_at": null,
"latest_published_at": "2026-07-23T15:12:52Z",
"latest_version_yanked": null,
"days_since_latest_publish": 0
},
{
"name": "io.evitadb:evita_engine",
"exists": true,
"license": null,
"keywords": [],
"ecosystem": "maven",
"matches_repo": null,
"registry_url": "https://central.sonatype.com/artifact/io.evitadb/evita_engine",
"is_deprecated": false,
"latest_version": "2026.1.20",
"repository_url": null,
"versions_count": 188,
"total_downloads": null,
"dependents_count": null,
"deprecation_note": null,
"maintainers_count": null,
"monthly_downloads": null,
"first_published_at": null,
"latest_published_at": "2026-07-23T15:13:06Z",
"latest_version_yanked": null,
"days_since_latest_publish": 0
},
{
"name": "io.evitadb:evita_server",
"exists": true,
"license": null,
"keywords": [],
"ecosystem": "maven",
"matches_repo": null,
"registry_url": "https://central.sonatype.com/artifact/io.evitadb/evita_server",
"is_deprecated": false,
"latest_version": "2026.1.20",
"repository_url": null,
"versions_count": 188,
"total_downloads": null,
"dependents_count": null,
"deprecation_note": null,
"maintainers_count": null,
"monthly_downloads": null,
"first_published_at": null,
"latest_published_at": "2026-07-23T15:13:03Z",
"latest_version_yanked": null,
"days_since_latest_publish": 0
}
]
},
"popularity": {
"forks": 7,
"stars": 70,
"watchers": 1,
"fork_history": {
"days": [
{
"date": "2023-03-01",
"count": 1
},
{
"date": "2023-03-03",
"count": 1
},
{
"date": "2023-10-23",
"count": 1
},
{
"date": "2023-11-09",
"count": 2
},
{
"date": "2024-05-04",
"count": 1
},
{
"date": "2024-07-22",
"count": 1
}
],
"complete": true,
"collected": 7,
"total_forks": 7
},
"star_history": null,
"open_issues_and_prs": 64
},
"ai_readiness": {
"has_nix": false,
"example_dirs": [
"example",
"examples"
],
"has_llms_txt": false,
"has_dockerfile": true,
"has_mcp_signal": false,
"bootstrap_files": [],
"api_schema_files": [
"documentation/blog/en/examples/17-one-to-many/article-spacing.graphql",
"documentation/blog/en/examples/17-one-to-many/product-categories-tags.graphql",
"documentation/blog/en/examples/17-one-to-many/product-categories.graphql",
"documentation/blog/en/examples/17-one-to-many/product-groups.graphql",
"documentation/blog/en/examples/17-one-to-many/product-parameters-top10.graphql",
"documentation/blog/en/examples/17-one-to-many/product-stock-existence.graphql",
"documentation/blog/en/examples/25-faceted-filter-choreography/01-full-panel.graphql",
"documentation/blog/en/examples/string_contains/string_contains.graphql",
"documentation/publishing/root.cz/04-web-APIs/getProduct.graphql",
"documentation/user/en/get-started/example/create-first-entity.graphql",
"documentation/user/en/get-started/example/create-small-dataset.graphql",
"documentation/user/en/get-started/example/define-catalog.graphql",
"documentation/user/en/get-started/example/define-schema-for-catalog.graphql",
"documentation/user/en/get-started/example/delete-entity-by-query.graphql",
"documentation/user/en/get-started/example/filter-order-entities.graphql",
"documentation/user/en/get-started/example/filter-order-products-by-price.graphql",
"documentation/user/en/get-started/example/list-entities.graphql",
"documentation/user/en/get-started/example/query-demo-server.graphql",
"documentation/user/en/get-started/example/read-entity-by-pk.graphql",
"documentation/user/en/get-started/example/update-entity.graphql",
"documentation/user/en/query/examples/complexGrammar.graphql",
"documentation/user/en/query/examples/grammar.graphql",
"documentation/user/en/query/examples/randomOrderQuery.graphql",
"documentation/user/en/query/examples/simplestQuery.graphql",
"documentation/user/en/query/filtering/examples/behavioral/archived-entities-filtering.graphql",
"documentation/user/en/query/filtering/examples/behavioral/archived-entities-listing.graphql",
"documentation/user/en/query/filtering/examples/behavioral/user-filter.graphql",
"documentation/user/en/query/filtering/examples/comparable/attribute-between.graphql",
"documentation/user/en/query/filtering/examples/comparable/attribute-equals.graphql",
"documentation/user/en/query/filtering/examples/comparable/attribute-greater-than-equals.graphql",
"documentation/user/en/query/filtering/examples/comparable/attribute-greater-than.graphql",
"documentation/user/en/query/filtering/examples/comparable/attribute-in-set.graphql",
"documentation/user/en/query/filtering/examples/comparable/attribute-is-not-null.graphql",
"documentation/user/en/query/filtering/examples/comparable/attribute-is-null.graphql",
"documentation/user/en/query/filtering/examples/comparable/attribute-less-than-equals.graphql",
"documentation/user/en/query/filtering/examples/comparable/attribute-less-than.graphql",
"documentation/user/en/query/filtering/examples/constant/entity-primary-key-in-set.graphql",
"documentation/user/en/query/filtering/examples/hierarchy/hierarchy-within-reference-any-having.graphql",
"documentation/user/en/query/filtering/examples/hierarchy/hierarchy-within-reference-direct-categories-smart.graphql",
"documentation/user/en/query/filtering/examples/hierarchy/hierarchy-within-reference-direct-categories.graphql",
"documentation/user/en/query/filtering/examples/hierarchy/hierarchy-within-reference-except.graphql",
"documentation/user/en/query/filtering/examples/hierarchy/hierarchy-within-reference-excluding-root.graphql",
"documentation/user/en/query/filtering/examples/hierarchy/hierarchy-within-reference-having-december.graphql",
"documentation/user/en/query/filtering/examples/hierarchy/hierarchy-within-reference-having.graphql",
"documentation/user/en/query/filtering/examples/hierarchy/hierarchy-within-reference-simple.graphql",
"documentation/user/en/query/filtering/examples/hierarchy/hierarchy-within-root-reference-simple.graphql",
"documentation/user/en/query/filtering/examples/hierarchy/hierarchy-within-root-simple.graphql",
"documentation/user/en/query/filtering/examples/hierarchy/hierarchy-within-self-any-having.graphql",
"documentation/user/en/query/filtering/examples/hierarchy/hierarchy-within-self-direct-categories.graphql",
"documentation/user/en/query/filtering/examples/hierarchy/hierarchy-within-self-excluding-root.graphql",
"documentation/user/en/query/filtering/examples/hierarchy/hierarchy-within-self-excluding.graphql",
"documentation/user/en/query/filtering/examples/hierarchy/hierarchy-within-self-having.graphql",
"documentation/user/en/query/filtering/examples/hierarchy/hierarchy-within-self-multi.graphql",
"documentation/user/en/query/filtering/examples/hierarchy/hierarchy-within-self-simple.graphql",
"documentation/user/en/query/filtering/examples/hierarchy/hierarchy-within-self-top-categories.graphql",
"documentation/user/en/query/filtering/examples/locale/locale.graphql",
"documentation/user/en/query/filtering/examples/locale/locale_missing.graphql",
"documentation/user/en/query/filtering/examples/logical/and.graphql",
"documentation/user/en/query/filtering/examples/logical/implicit-binding.graphql",
"documentation/user/en/query/filtering/examples/logical/not-narrowed.graphql",
"documentation/user/en/query/filtering/examples/logical/not.graphql",
"documentation/user/en/query/filtering/examples/logical/or.graphql",
"documentation/user/en/query/filtering/examples/price/price-between.graphql",
"documentation/user/en/query/filtering/examples/price/price-in-currency.graphql",
"documentation/user/en/query/filtering/examples/price/price-in-price-lists.graphql",
"documentation/user/en/query/filtering/examples/price/price-valid-in-correct.graphql",
"documentation/user/en/query/filtering/examples/price/price-valid-in.graphql",
"documentation/user/en/query/filtering/examples/price/price.graphql",
"documentation/user/en/query/filtering/examples/range/attribute-in-range.graphql",
"documentation/user/en/query/filtering/examples/references/entity-having.graphql",
"documentation/user/en/query/filtering/examples/references/facet-having.graphql",
"documentation/user/en/query/filtering/examples/references/facet-including-children-except.graphql",
"documentation/user/en/query/filtering/examples/references/facet-including-children-having.graphql",
"documentation/user/en/query/filtering/examples/references/facet-including-children.graphql",
"documentation/user/en/query/filtering/examples/references/group-having.graphql",
"documentation/user/en/query/filtering/examples/references/histogram-having.graphql",
"documentation/user/en/query/filtering/examples/references/reference-having-any.graphql",
"documentation/user/en/query/filtering/examples/references/reference-having-exact-id.graphql",
"documentation/user/en/query/filtering/examples/references/reference-having.graphql",
"documentation/user/en/query/filtering/examples/string/attribute-contains.graphql",
"documentation/user/en/query/filtering/examples/string/attribute-ends-with.graphql",
"documentation/user/en/query/filtering/examples/string/attribute-starts-with.graphql",
"documentation/user/en/query/header/examples/labels.graphql",
"documentation/user/en/query/ordering/examples/behavioral/archived-entities-ordering.graphql",
"documentation/user/en/query/ordering/examples/comparable/attribute-natural-localized.graphql",
"documentation/user/en/query/ordering/examples/comparable/attribute-natural-multiple.graphql",
"documentation/user/en/query/ordering/examples/comparable/attribute-natural-non-localized.graphql",
"documentation/user/en/query/ordering/examples/comparable/primary-key-natural.graphql",
"documentation/user/en/query/ordering/examples/constant/attribute-set-exact.graphql",
"documentation/user/en/query/ordering/examples/constant/attribute-set-in-filter.graphql",
"documentation/user/en/query/ordering/examples/constant/entity-primary-key-exact.graphql",
"documentation/user/en/query/ordering/examples/constant/entity-primary-key-in-filter.graphql",
"documentation/user/en/query/ordering/examples/price/price-discount.graphql",
"documentation/user/en/query/ordering/examples/price/price-natural.graphql",
"documentation/user/en/query/ordering/examples/random/pseudo-random.graphql",
"documentation/user/en/query/ordering/examples/random/random.graphql",
"documentation/user/en/query/ordering/examples/reference/entity-group-property.graphql",
"documentation/user/en/query/ordering/examples/reference/entity-property.graphql",
"documentation/user/en/query/ordering/examples/reference/reference-attribute-natural-hierarchy.graphql",
"documentation/user/en/query/ordering/examples/reference/reference-attribute-natural-multiple-explicit.graphql",
"documentation/user/en/query/ordering/examples/reference/reference-attribute-natural-multiple.graphql",
"documentation/user/en/query/ordering/examples/reference/reference-attribute-natural.graphql",
"documentation/user/en/query/ordering/examples/reference/reference-traverse-by.graphql",
"documentation/user/en/query/ordering/examples/segment/segments.graphql",
"documentation/user/en/query/requirements/examples/behavioral/archived-entities-requirements.graphql",
"documentation/user/en/query/requirements/examples/facet/change-default-calculation-rules.graphql",
"documentation/user/en/query/requirements/examples/facet/facet-groups-conjunction.graphql",
"documentation/user/en/query/requirements/examples/facet/facet-groups-disjunction.graphql",
"documentation/user/en/query/requirements/examples/facet/facet-groups-exclusivity.graphql",
"documentation/user/en/query/requirements/examples/facet/facet-groups-negation.graphql",
"documentation/user/en/query/requirements/examples/facet/reference-summary-bodies.graphql",
"documentation/user/en/query/requirements/examples/facet/reference-summary-filtering.graphql",
"documentation/user/en/query/requirements/examples/facet/reference-summary-histograms.graphql",
"documentation/user/en/query/requirements/examples/facet/reference-summary-localized-bodies.graphql",
"documentation/user/en/query/requirements/examples/facet/reference-summary-of-reference.graphql",
"documentation/user/en/query/requirements/examples/facet/reference-summary-ordering.graphql",
"documentation/user/en/query/requirements/examples/facet/reference-summary.graphql",
"documentation/user/en/query/requirements/examples/fetching/accompanying-price-content.graphql",
"documentation/user/en/query/requirements/examples/fetching/allPricesForSaleField.graphql",
"documentation/user/en/query/requirements/examples/fetching/allPricesForSaleFieldWithReferencePrices.graphql",
"documentation/user/en/query/requirements/examples/fetching/associatedDataContent.graphql",
"documentation/user/en/query/requirements/examples/fetching/associatedDataContentAll.graphql",
"documentation/user/en/query/requirements/examples/fetching/attributeContent.graphql",
"documentation/user/en/query/requirements/examples/fetching/attributeContentAll.graphql",
"documentation/user/en/query/requirements/examples/fetching/basicEntityContent.graphql",
"documentation/user/en/query/requirements/examples/fetching/dataInLocales.graphql",
"documentation/user/en/query/requirements/examples/fetching/dataInLocalesAll.graphql",
"documentation/user/en/query/requirements/examples/fetching/dataInLocalesWithFilter.graphql",
"documentation/user/en/query/requirements/examples/fetching/entityContent.graphql",
"documentation/user/en/query/requirements/examples/fetching/hierarchyContent.graphql",
"documentation/user/en/query/requirements/examples/fetching/hierarchyContentViaReference.graphql",
"documentation/user/en/query/requirements/examples/fetching/localizedAssociatedData.graphql",
"documentation/user/en/query/requirements/examples/fetching/localizedAssociatedDataWithFilter.graphql",
"documentation/user/en/query/requirements/examples/fetching/localizedAttributes.graphql",
"documentation/user/en/query/requirements/examples/fetching/localizedAttributesWithFilter.graphql",
"documentation/user/en/query/requirements/examples/fetching/namedReferenceContent.graphql",
"documentation/user/en/query/requirements/examples/fetching/priceContent.graphql",
"documentation/user/en/query/requirements/examples/fetching/priceContentAll.graphql",
"documentation/user/en/query/requirements/examples/fetching/priceContentRespectingFilter.graphql",
"documentation/user/en/query/requirements/examples/fetching/priceForSaleField.graphql",
"documentation/user/en/query/requirements/examples/fetching/priceForSaleFieldWithArguments.graphql",
"documentation/user/en/query/requirements/examples/fetching/priceForSaleRangeField.graphql",
"documentation/user/en/query/requirements/examples/fetching/pricesField.graphql",
"documentation/user/en/query/requirements/examples/fetching/pricesFieldFiltered.graphql",
"documentation/user/en/query/requirements/examples/fetching/referenceContent.graphql",
"documentation/user/en/query/requirements/examples/fetching/referenceContentAll.graphql",
"documentation/user/en/query/requirements/examples/fetching/referenceContentBodies.graphql",
"documentation/user/en/query/requirements/examples/fetching/referenceContentFilter.graphql",
"documentation/user/en/query/requirements/examples/fetching/referenceContentNested.graphql",
"documentation/user/en/query/requirements/examples/fetching/referenceContentOrder.graphql",
"documentation/user/en/query/requirements/examples/fetching/referenceContentPage.graphql",
"documentation/user/en/query/requirements/examples/fetching/referenceContentPageEmpty.graphql",
"documentation/user/en/query/requirements/examples/fetching/referenceContentWithAttributes.graphql",
"documentation/user/en/query/requirements/examples/hierarchy/hierarchy-children.graphql",
"documentation/user/en/query/requirements/examples/hierarchy/hierarchy-data-structure-association.graphql",
"documentation/user/en/query/requirements/examples/hierarchy/hierarchy-direct-children.graphql",
"documentation/user/en/query/requirements/examples/hierarchy/hierarchy-from-node.graphql",
"documentation/user/en/query/requirements/examples/hierarchy/hierarchy-from-root.graphql",
"documentation/user/en/query/requirements/examples/hierarchy/hierarchy-level-parent.graphql",
"documentation/user/en/query/requirements/examples/hierarchy/hierarchy-level.graphql",
"documentation/user/en/query/requirements/examples/hierarchy/hierarchy-node.graphql",
"documentation/user/en/query/requirements/examples/hierarchy/hierarchy-parent.graphql",
"documentation/user/en/query/requirements/examples/hierarchy/hierarchy-parents-siblings.graphql",
"documentation/user/en/query/requirements/examples/hierarchy/hierarchy-parents.graphql",
"documentation/user/en/query/requirements/examples/hierarchy/hierarchy-siblings-with-subtree.graphql",
"documentation/user/en/query/requirements/examples/hierarchy/hierarchy-siblings.graphql",
"documentation/user/en/query/requirements/examples/histogram/attribute-histogram-equalized.graphql",
"documentation/user/en/query/requirements/examples/histogram/attribute-histogram-optimized.graphql",
"documentation/user/en/query/requirements/examples/histogram/attribute-histogram.graphql",
"documentation/user/en/query/requirements/examples/histogram/price-histogram-equalized.graphql",
"documentation/user/en/query/requirements/examples/histogram/price-histogram-optimized.graphql",
"documentation/user/en/query/requirements/examples/histogram/price-histogram.graphql",
"documentation/user/en/query/requirements/examples/paging/listEntities.graphql",
"documentation/user/en/query/requirements/examples/paging/page.graphql",
"documentation/user/en/query/requirements/examples/paging/spacing_page1.graphql",
"documentation/user/en/query/requirements/examples/paging/spacing_page2.graphql",
"documentation/user/en/query/requirements/examples/paging/spacing_page4.graphql",
"documentation/user/en/query/requirements/examples/paging/strip.graphql",
"documentation/user/en/query/requirements/examples/price/price-type-without-tax.graphql",
"documentation/user/en/query/requirements/examples/price/price-type.graphql",
"documentation/user/en/query/requirements/examples/telemetry/queryTelemetry.graphql",
"documentation/user/en/solve/examples/filtering-products-in-category/breadcrumb-category.graphql",
"documentation/user/en/solve/examples/filtering-products-in-category/breadcrumb-product.graphql",
"documentation/user/en/solve/examples/filtering-products-in-category/category-description.graphql",
"documentation/user/en/solve/examples/filtering-products-in-category/category-details-with-breadcrumb.graphql",
"documentation/user/en/solve/examples/filtering-products-in-category/faceted-search-brand.graphql",
"documentation/user/en/solve/examples/filtering-products-in-category/faceted-search.graphql",
"documentation/user/en/solve/examples/filtering-products-in-category/price-filter.graphql",
"documentation/user/en/solve/examples/filtering-products-in-category/product-listing-with-facets-and-sorting.graphql",
"documentation/user/en/solve/examples/filtering-products-in-category/product-listing.graphql",
"documentation/user/en/solve/examples/filtering-products-in-category/top-selling-products.graphql",
"documentation/user/en/solve/examples/render-category-menu/dynamic-collapsible-menu-sub-category.graphql",
"documentation/user/en/solve/examples/render-category-menu/dynamic-collapsible-menu.graphql",
"documentation/user/en/solve/examples/render-category-menu/excluding-expired-categories-at-correct-time.graphql",
"documentation/user/en/solve/examples/render-category-menu/excluding-expired-categories.graphql",
"documentation/user/en/solve/examples/render-category-menu/excluding-private-categories.graphql",
"documentation/user/en/solve/examples/render-category-menu/hybrid-menu.graphql",
"documentation/user/en/solve/examples/render-category-menu/mega-menu-with-product-statistics.graphql",
"documentation/user/en/solve/examples/render-category-menu/mega-menu.graphql",
"documentation/user/en/solve/examples/render-category-menu/sub-categories-listing.graphql",
"documentation/user/en/solve/examples/routing/get-by-globally-unique-attribute.graphql",
"documentation/user/en/solve/examples/routing/get-by-globally-unique-locale-specific-attribute.graphql",
"documentation/user/en/solve/examples/routing/get-by-unique-attribute.graphql",
"documentation/user/en/solve/examples/routing/get-category-with-data.graphql",
"documentation/user/en/solve/examples/routing/get-product-with-data.graphql",
"documentation/user/en/use/api/example/capture-attribute-mutation-data-api.graphql",
"documentation/user/en/use/api/example/capture-attribute-mutation-graphql.graphql",
"documentation/user/en/use/api/example/capture-attribute-mutation-schema-api.graphql",
"documentation/user/en/use/api/example/capture-entity-mutations-with-transaction-graphql.graphql",
"documentation/user/en/use/api/example/catalog-change-capture-data-api.graphql",
"documentation/user/en/use/api/example/catalog-change-capture-graphql.graphql",
"documentation/user/en/use/api/example/catalog-change-capture-schema-api.graphql",
"documentation/user/en/use/api/example/create-new-entity.graphql",
"documentation/user/en/use/api/example/delete-entities-by-query.graphql",
"documentation/user/en/use/api/example/engine-change-capture-graphql.graphql",
"documentation/user/en/use/api/example/evita-query-example.graphql",
"documentation/user/en/use/api/example/fetching-example.graphql",
"documentation/user/en/use/api/example/finalization-of-warmup-mode.graphql",
"documentation/user/en/use/api/example/graphql-full-query-example.graphql",
"documentation/user/en/use/api/example/graphql-get-entity-query-example.graphql",
"documentation/user/en/use/api/example/graphql-get-entity-with-target-entity-query-example.graphql",
"documentation/user/en/use/api/example/graphql-get-query-example.graphql",
"documentation/user/en/use/api/example/graphql-list-entity-query-example.graphql",
"documentation/user/en/use/api/example/graphql-list-entity-with-target-entity-query-example.graphql",
"documentation/user/en/use/api/example/graphql-list-query-example.graphql",
"documentation/user/en/use/api/example/imperative-catalog-schema-definition.graphql",
"documentation/user/en/use/api/example/imperative-collection-schema-definition.graphql",
"documentation/user/en/use/api/example/update-existing-entity.graphql",
"evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcAssociatedData.proto",
"evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcAssociatedDataMutations.proto",
"evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcAssociatedDataSchemaMutations.proto",
"evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcAttribute.proto",
"evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcAttributeMutations.proto",
"evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcAttributeSchemaMutations.proto",
"evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcCatalogSchema.proto",
"evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcCatalogSchemaMutation.proto",
"evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcCatalogSchemaMutations.proto",
"evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcChangeCapture.proto",
"evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcEngineMutation.proto",
"evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcEntity.proto",
"evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcEntityMutation.proto",
"evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcEntityMutations.proto",
"evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcEntitySchema.proto",
"evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcEntitySchemaMutation.proto",
"evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcEntitySchemaMutations.proto",
"evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcEnums.proto",
"evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcEvitaAPI.proto",
"evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcEvitaDataTypes.proto",
"evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcEvitaManagementAPI.proto",
"evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcEvitaSessionAPI.proto",
"evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcEvitaTrafficRecordingAPI.proto",
"evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcExtraResults.proto",
"evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcInfrastrutureMutation.proto",
"evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcLocalMutation.proto",
"evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcPrice.proto",
"evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcPriceMutations.proto",
"evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcQueryParam.proto",
"evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcReferenceMutations.proto",
"evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcReferenceSchemaMutations.proto",
"evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcSortableAttributeCompoundSchemaMutations.proto",
"evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcTrafficRecording.proto",
"evita_test/evita_functional_tests/src/test/resources/testData/CatalogGraphQLQueryTranslationVerifyingFunctionTest_query.graphql"
],
"has_devcontainer": false,
"typecheck_configs": [],
"toolchain_manifests": [
"documentation/research/en/nosql/spike_tests/pom.xml",
"documentation/research/en/sql/assets/query_testing/queries_measurement/pom.xml",
"evita_api/pom.xml",
"evita_common/pom.xml",
"evita_db/pom.xml",
"evita_engine/pom.xml",
"evita_export/evita_export_fs/pom.xml",
"evita_export/evita_export_s3/pom.xml",
"evita_external_api/evita_external_api_core/pom.xml",
"evita_external_api/evita_external_api_graphql/pom.xml",
"evita_external_api/evita_external_api_grpc/client/pom.xml",
"evita_external_api/evita_external_api_grpc/client_all_in_one/pom.xml",
"evita_external_api/evita_external_api_grpc/client_observability/pom.xml",
"evita_external_api/evita_external_api_grpc/server/pom.xml",
"evita_external_api/evita_external_api_grpc/shared/pom.xml",
"evita_external_api/evita_external_api_lab/pom.xml",
"evita_external_api/evita_external_api_observability/pom.xml",
"evita_external_api/evita_external_api_rest/pom.xml",
"evita_external_api/evita_external_api_system/pom.xml",
"evita_external_api/pom.xml",
"evita_query/pom.xml",
"evita_roaring_bitmap/pom.xml",
"evita_server/pom.xml",
"evita_store/evita_store_entity/pom.xml",
"evita_store/evita_store_key_value/pom.xml",
"evita_store/evita_store_server/pom.xml",
"evita_store/evita_traffic_engine/pom.xml",
"evita_store/pom.xml",
"evita_test/evita_documentation_tests/pom.xml",
"evita_test/evita_functional_tests/pom.xml",
"evita_test/evita_long_running_tests/pom.xml",
"evita_test/evita_performance_tests/pom.xml",
"evita_test/evita_test_support/pom.xml",
"jacoco/pom.xml",
"pom.xml"
],
"largest_source_bytes": 704058,
"source_files_sampled": 6339,
"oversized_source_files": 123,
"agent_instruction_files": [
"CLAUDE.md"
],
"agent_instruction_max_bytes": 1787
},
"dependencies": {
"manifests": [
"evita_api/pom.xml",
"evita_common/pom.xml",
"evita_db/pom.xml",
"evita_engine/pom.xml",
"evita_external_api/pom.xml",
"evita_query/pom.xml",
"evita_roaring_bitmap/pom.xml",
"evita_server/pom.xml",
"evita_store/pom.xml",
"jacoco/pom.xml",
"pom.xml"
],
"advisories": {
"error": null,
"scope": "repository_graph",
"source": "osv",
"findings": [
{
"name": "org.springframework:spring-web",
"direct": false,
"version": "5.2.10.RELEASE",
"severity": "critical",
"ecosystem": "maven",
"cvss_score": 9.8,
"advisory_ids": [
"GHSA-2rmj-mq67-h97g",
"GHSA-2wrp-6fg6-hmc5",
"GHSA-4gc7-5j7h-4qph",
"GHSA-4wrc-f8pq-fpqp",
"GHSA-ccgv-vj62-xf9h",
"GHSA-gfwj-fwqj-fp3v",
"GHSA-hgjh-9rj2-g67j"
],
"fixed_version": "6.1.14",
"advisory_count": 7,
"oldest_advisory_days": 1521
},
{
"name": "com.fasterxml.jackson.core:jackson-core",
"direct": true,
"version": "2.11.3",
"severity": "high",
"ecosystem": "maven",
"cvss_score": 7.5,
"advisory_ids": [
"GHSA-72hv-8253-57qq",
"GHSA-h46c-h94j-95f3",
"GHSA-r7wm-3cxj-wff9",
"GHSA-wf8f-6423-gfxg"
],
"fixed_version": "3.2.1",
"advisory_count": 4,
"oldest_advisory_days": 412
},
{
"name": "com.fasterxml.jackson.core:jackson-databind",
"direct": true,
"version": "2.12.7.1",
"severity": "high",
"ecosystem": "maven",
"cvss_score": 8.1,
"advisory_ids": [
"GHSA-3wrr-7qpf-2prh",
"GHSA-5jmj-h7xm-6q6v",
"GHSA-hgj6-7826-r7m5",
"GHSA-j3rv-43j4-c7qm",
"GHSA-rmj7-2vxq-3g9f"
],
"fixed_version": "3.1.4",
"advisory_count": 5,
"oldest_advisory_days": 30
},
{
"name": "io.netty:netty-codec-compression",
"direct": false,
"version": "4.2.15.Final",
"severity": "high",
"ecosystem": "maven",
"cvss_score": 7.5,
"advisory_ids": [
"GHSA-558v-64gr-wgg4"
],
"fixed_version": "4.2.16.Final",
"advisory_count": 1,
"oldest_advisory_days": 1
},
{
"name": "io.netty:netty-codec-haproxy",
"direct": false,
"version": "4.2.15.Final",
"severity": "high",
"ecosystem": "maven",
"cvss_score": 7.5,
"advisory_ids": [
"GHSA-q6cq-mhr2-jmr5",
"GHSA-wh89-7897-x99h"
],
"fixed_version": "4.2.16.Final",
"advisory_count": 2,
"oldest_advisory_days": 1
},
{
"name": "io.netty:netty-codec-http",
"direct": false,
"version": "4.2.15.Final",
"severity": "high",
"ecosystem": "maven",
"cvss_score": 7.5,
"advisory_ids": [
"GHSA-4mp9-239f-g9hg",
"GHSA-6cqp-g7gg-8hr5",
"GHSA-6jqx-86gh-f27w",
"GHSA-gcjf-9mgh-3p7g",
"GHSA-jppx-w49h-x2qq",
"GHSA-mvh2-crg5-v77c",
"GHSA-q4f6-jm68-57ww"
],
"fixed_version": "4.2.16.Final",
"advisory_count": 7,
"oldest_advisory_days": 1
},
{
"name": "org.elasticsearch:elasticsearch",
"direct": false,
"version": "7.6.2",
"severity": "high",
"ecosystem": "maven",
"cvss_score": 7.5,
"advisory_ids": [
"GHSA-285m-vhfq-xx4h",
"GHSA-2cqf-6xv9-f22w",
"GHSA-2hjr-vmf3-xwvp",
"GHSA-3393-hvrj-w7v3",
"GHSA-56r7-h6mw-rcfv",
"GHSA-5v8f-xx9m-wj44",
"GHSA-62ww-4p3p-7fhj",
"GHSA-99pc-69q9-jxf2",
"GHSA-c77j-p484-h84m",
"GHSA-cqgv-256r-m9r8"
],
"fixed_version": "9.2.2",
"advisory_count": 17,
"oldest_advisory_days": 1953
},
{
"name": "org.springframework.boot:spring-boot-autoconfigure",
"direct": false,
"version": "2.3.5",
"severity": "high",
"ecosystem": "maven",
"cvss_score": 7.5,
"advisory_ids": [
"GHSA-xf96-w227-r7c4"
],
"fixed_version": "3.0.7",
"advisory_count": 1,
"oldest_advisory_days": 1154
},
{
"name": "org.apache.commons:commons-lang3",
"direct": true,
"version": "3.11",
"severity": "moderate",
"ecosystem": "maven",
"cvss_score": 6.5,
"advisory_ids": [
"GHSA-j288-q9x7-2f5v"
],
"fixed_version": "3.18.0",
"advisory_count": 1,
"oldest_advisory_days": 377
},
{
"name": "junit:junit",
"direct": false,
"version": "4.13",
"severity": "moderate",
"ecosystem": "maven",
"cvss_score": 4.4,
"advisory_ids": [
"GHSA-269g-pwp5-87pp"
],
"fixed_version": "4.13.1",
"advisory_count": 1,
"oldest_advisory_days": 2110
},
{
"name": "io.netty:netty-codec-http2",
"direct": false,
"version": "4.2.15.Final",
"severity": "low",
"ecosystem": "maven",
"cvss_score": 0,
"advisory_ids": [
"GHSA-c69g-56f8-xwqj"
],
"fixed_version": "4.2.16.Final",
"advisory_count": 1,
"oldest_advisory_days": 1
}
],
"collected": true,
"malicious": [],
"truncated": false,
"by_severity": {
"low": 1,
"high": 7,
"critical": 1,
"moderate": 2
},
"advisory_count": 47,
"affected_count": 11,
"assessed_count": 275,
"malicious_count": 0,
"assessed_package": null,
"unassessed_count": 9,
"direct_affected_count": 3
},
"ecosystems": [
"maven"
],
"dependencies": [
{
"name": "${project.parent.groupId}:evita_common",
"manifest": "evita_api/pom.xml",
"ecosystem": "maven",
"version_constraint": "${project.parent.version}"
},
{
"name": "${project.parent.groupId}:evita_query",
"manifest": "evita_api/pom.xml",
"ecosystem": "maven",
"version_constraint": "${project.parent.version}"
},
{
"name": "net.openhft:zero-allocation-hashing",
"manifest": "evita_api/pom.xml",
"ecosystem": "maven",
"version_constraint": null
},
{
"name": "one.edee.oss:proxycian_bytebuddy",
"manifest": "evita_api/pom.xml",
"ecosystem": "maven",
"version_constraint": null
},
{
"name": "org.slf4j:slf4j-api",
"manifest": "evita_api/pom.xml",
"ecosystem": "maven",
"version_constraint": null
},
{
"name": "org.slf4j:slf4j-api",
"manifest": "evita_common/pom.xml",
"ecosystem": "maven",
"version_constraint": null
},
{
"name": "com.fasterxml.jackson.core:jackson-databind",
"manifest": "evita_common/pom.xml",
"ecosystem": "maven",
"version_constraint": "${jackson.version}"
},
{
"name": "com.fasterxml.jackson.datatype:jackson-datatype-jdk8",
"manifest": "evita_common/pom.xml",
"ecosystem": "maven",
"version_constraint": "${jackson.version}"
},
{
"name": "net.openhft:zero-allocation-hashing",
"manifest": "evita_common/pom.xml",
"ecosystem": "maven",
"version_constraint": null
},
{
"name": "com.squareup.okhttp3:okhttp-jvm",
"manifest": "evita_common/pom.xml",
"ecosystem": "maven",
"version_constraint": null
},
{
"name": "${project.parent.groupId}:evita_common",
"manifest": "evita_db/pom.xml",
"ecosystem": "maven",
"version_constraint": "${project.parent.version}"
},
{
"name": "${project.parent.groupId}:evita_query",
"manifest": "evita_db/pom.xml",
"ecosystem": "maven",
"version_constraint": "${project.parent.version}"
},
{
"name": "${project.parent.groupId}:evita_api",
"manifest": "evita_db/pom.xml",
"ecosystem": "maven",
"version_constraint": "${project.parent.version}"
},
{
"name": "${project.parent.groupId}:evita_engine",
"manifest": "evita_db/pom.xml",
"ecosystem": "maven",
"version_constraint": "${project.parent.version}"
},
{
"name": "${project.parent.groupId}:evita_store_server",
"manifest": "evita_db/pom.xml",
"ecosystem": "maven",
"version_constraint": "${project.parent.version}"
},
{
"name": "${project.parent.groupId}:evita_store_entity",
"manifest": "evita_db/pom.xml",
"ecosystem": "maven",
"version_constraint": "${project.parent.version}"
},
{
"name": "${project.parent.groupId}:evita_common",
"manifest": "evita_engine/pom.xml",
"ecosystem": "maven",
"version_constraint": "${project.parent.version}"
},
{
"name": "${project.parent.groupId}:evita_query",
"manifest": "evita_engine/pom.xml",
"ecosystem": "maven",
"version_constraint": "${project.parent.version}"
},
{
"name": "${project.parent.groupId}:evita_api",
"manifest": "evita_engine/pom.xml",
"ecosystem": "maven",
"version_constraint": "${project.parent.version}"
},
{
"name": "${project.parent.groupId}:evita_roaring_bitmap",
"manifest": "evita_engine/pom.xml",
"ecosystem": "maven",
"version_constraint": "${project.parent.version}"
},
{
"name": "net.bytebuddy:byte-buddy",
"manifest": "evita_engine/pom.xml",
"ecosystem": "maven",
"version_constraint": "${byteBuddy.version}"
},
{
"name": "net.bytebuddy:byte-buddy-agent",
"manifest": "evita_engine/pom.xml",
"ecosystem": "maven",
"version_constraint": "${byteBuddy.version}"
},
{
"name": "one.edee.oss:proxycian_bytebuddy",
"manifest": "evita_engine/pom.xml",
"ecosystem": "maven",
"version_constraint": null
},
{
"name": "com.carrotsearch:hppc",
"manifest": "evita_engine/pom.xml",
"ecosystem": "maven",
"version_constraint": null
},
{
"name": "net.openhft:zero-allocation-hashing",
"manifest": "evita_engine/pom.xml",
"ecosystem": "maven",
"version_constraint": null
},
{
"name": "com.esotericsoftware:kryo",
"manifest": "evita_engine/pom.xml",
"ecosystem": "maven",
"version_constraint": null
},
{
"name": "${project.parent.groupId}:evita_api",
"manifest": "evita_external_api/pom.xml",
"ecosystem": "maven",
"version_constraint": "${project.parent.version}"
},
{
"name": "${project.parent.groupId}:evita_common",
"manifest": "evita_external_api/pom.xml",
"ecosystem": "maven",
"version_constraint": "${project.parent.version}"
},
{
"name": "${project.parent.groupId}:evita_engine",
"manifest": "evita_external_api/pom.xml",
"ecosystem": "maven",
"version_constraint": "${project.parent.version}"
},
{
"name": "${project.parent.groupId}:evita_external_api_core",
"manifest": "evita_external_api/pom.xml",
"ecosystem": "maven",
"version_constraint": "${project.parent.version}"
},
{
"name": "${project.parent.groupId}:evita_common",
"manifest": "evita_query/pom.xml",
"ecosystem": "maven",
"version_constraint": "${project.parent.version}"
},
{
"name": "org.antlr:antlr4-runtime",
"manifest": "evita_query/pom.xml",
"ecosystem": "maven",
"version_constraint": "${antlr4.version}"
},
{
"name": "${project.parent.groupId}:evita_engine",
"manifest": "evita_server/pom.xml",
"ecosystem": "maven",
"version_constraint": "${project.parent.version}"
},
{
"name": "${project.parent.groupId}:evita_store_key_value",
"manifest": "evita_server/pom.xml",
"ecosystem": "maven",
"version_constraint": "${project.parent.version}"
},
{
"name": "${project.parent.groupId}:evita_store_entity",
"manifest": "evita_server/pom.xml",
"ecosystem": "maven",
"version_constraint": "${project.parent.version}"
},
{
"name": "${project.parent.groupId}:evita_store_server",
"manifest": "evita_server/pom.xml",
"ecosystem": "maven",
"version_constraint": "${project.parent.version}"
},
{
"name": "${project.parent.groupId}:evita_export_fs",
"manifest": "evita_server/pom.xml",
"ecosystem": "maven",
"version_constraint": "${project.parent.version}"
},
{
"name": "${project.parent.groupId}:evita_export_s3",
"manifest": "evita_server/pom.xml",
"ecosystem": "maven",
"version_constraint": "${project.parent.version}"
},
{
"name": "${project.parent.groupId}:evita_traffic_engine",
"manifest": "evita_server/pom.xml",
"ecosystem": "maven",
"version_constraint": "${project.parent.version}"
},
{
"name": "${project.parent.groupId}:evita_external_api_core",
"manifest": "evita_server/pom.xml",
"ecosystem": "maven",
"version_constraint": "${project.parent.version}"
},
{
"name": "${project.parent.groupId}:evita_external_api_graphql",
"manifest": "evita_server/pom.xml",
"ecosystem": "maven",
"version_constraint": "${project.parent.version}"
},
{
"name": "${project.parent.groupId}:evita_external_api_rest",
"manifest": "evita_server/pom.xml",
"ecosystem": "maven",
"version_constraint": "${project.parent.version}"
},
{
"name": "${project.parent.groupId}:evita_external_api_grpc",
"manifest": "evita_server/pom.xml",
"ecosystem": "maven",
"version_constraint": "${project.parent.version}"
},
{
"name": "${project.parent.groupId}:evita_external_api_system",
"manifest": "evita_server/pom.xml",
"ecosystem": "maven",
"version_constraint": "${project.parent.version}"
},
{
"name": "${project.parent.groupId}:evita_external_api_lab",
"manifest": "evita_server/pom.xml",
"ecosystem": "maven",
"version_constraint": "${project.parent.version}"
},
{
"name": "${project.parent.groupId}:evita_external_api_observability",
"manifest": "evita_server/pom.xml",
"ecosystem": "maven",
"version_constraint": "${project.parent.version}"
},
{
"name": "com.fasterxml.jackson.dataformat:jackson-dataformat-yaml",
"manifest": "evita_server/pom.xml",
"ecosystem": "maven",
"version_constraint": null
},
{
"name": "com.fasterxml.jackson.module:jackson-module-parameter-names",
"manifest": "evita_server/pom.xml",
"ecosystem": "maven",
"version_constraint": null
},
{
"name": "org.yaml:snakeyaml",
"manifest": "evita_server/pom.xml",
"ecosystem": "maven",
"version_constraint": null
},
{
"name": "com.squareup.okhttp3:okhttp-jvm",
"manifest": "evita_server/pom.xml",
"ecosystem": "maven",
"version_constraint": null
},
{
"name": "org.apache.commons:commons-text",
"manifest": "evita_server/pom.xml",
"ecosystem": "maven",
"version_constraint": null
},
{
"name": "org.slf4j:slf4j-api",
"manifest": "evita_server/pom.xml",
"ecosystem": "maven",
"version_constraint": null
},
{
"name": "ch.qos.logback:logback-classic",
"manifest": "evita_server/pom.xml",
"ecosystem": "maven",
"version_constraint": null
},
{
"name": "${project.parent.groupId}:evita_common",
"manifest": "evita_store/pom.xml",
"ecosystem": "maven",
"version_constraint": "${project.parent.version}"
},
{
"name": "${project.parent.groupId}:evita_api",
"manifest": "evita_store/pom.xml",
"ecosystem": "maven",
"version_constraint": "${project.parent.version}"
},
{
"name": "${project.parent.groupId}:evita_api",
"manifest": "jacoco/pom.xml",
"ecosystem": "maven",
"version_constraint": "${project.parent.version}"
},
{
"name": "${project.parent.groupId}:evita_common",
"manifest": "jacoco/pom.xml",
"ecosystem": "maven",
"version_constraint": "${project.parent.version}"
},
{
"name": "${project.parent.groupId}:evita_engine",
"manifest": "jacoco/pom.xml",
"ecosystem": "maven",
"version_constraint": "${project.parent.version}"
},
{
"name": "${project.parent.groupId}:evita_query",
"manifest": "jacoco/pom.xml",
"ecosystem": "maven",
"version_constraint": "${project.parent.version}"
},
{
"name": "${project.parent.groupId}:evita_store_key_value",
"manifest": "jacoco/pom.xml",
"ecosystem": "maven",
"version_constraint": "${project.parent.version}"
},
{
"name": "${project.parent.groupId}:evita_store_entity",
"manifest": "jacoco/pom.xml",
"ecosystem": "maven",
"version_constraint": "${project.parent.version}"
},
{
"name": "${project.parent.groupId}:evita_store_server",
"manifest": "jacoco/pom.xml",
"ecosystem": "maven",
"version_constraint": "${project.parent.version}"
},
{
"name": "${project.parent.groupId}:evita_traffic_engine",
"manifest": "jacoco/pom.xml",
"ecosystem": "maven",
"version_constraint": "${project.parent.version}"
},
{
"name": "${project.parent.groupId}:evita_export_fs",
"manifest": "jacoco/pom.xml",
"ecosystem": "maven",
"version_constraint": "${project.parent.version}"
},
{
"name": "${project.parent.groupId}:evita_export_s3",
"manifest": "jacoco/pom.xml",
"ecosystem": "maven",
"version_constraint": "${project.parent.version}"
},
{
"name": "${project.parent.groupId}:evita_external_api_core",
"manifest": "jacoco/pom.xml",
"ecosystem": "maven",
"version_constraint": "${project.parent.version}"
},
{
"name": "${project.parent.groupId}:evita_external_api_graphql",
"manifest": "jacoco/pom.xml",
"ecosystem": "maven",
"version_constraint": "${project.parent.version}"
},
{
"name": "${project.parent.groupId}:evita_external_api_rest",
"manifest": "jacoco/pom.xml",
"ecosystem": "maven",
"version_constraint": "${project.parent.version}"
},
{
"name": "${project.parent.groupId}:evita_external_api_grpc_shared",
"manifest": "jacoco/pom.xml",
"ecosystem": "maven",
"version_constraint": "${project.parent.version}"
},
{
"name": "${project.parent.groupId}:evita_external_api_grpc",
"manifest": "jacoco/pom.xml",
"ecosystem": "maven",
"version_constraint": "${project.parent.version}"
},
{
"name": "${project.parent.groupId}:evita_java_driver",
"manifest": "jacoco/pom.xml",
"ecosystem": "maven",
"version_constraint": "${project.parent.version}"
},
{
"name": "${project.parent.groupId}:evita_server",
"manifest": "jacoco/pom.xml",
"ecosystem": "maven",
"version_constraint": "${project.parent.version}"
},
{
"name": "${project.parent.groupId}:evita_functional_tests",
"manifest": "jacoco/pom.xml",
"ecosystem": "maven",
"version_constraint": "${project.parent.version}"
},
{
"name": "${project.parent.groupId}:evita_test_support",
"manifest": "jacoco/pom.xml",
"ecosystem": "maven",
"version_constraint": "${project.parent.version}"
},
{
"name": "com.esotericsoftware:kryo",
"manifest": "pom.xml",
"ecosystem": "maven",
"version_constraint": "${kryo.version}"
},
{
"name": "com.carrotsearch:hppc",
"manifest": "pom.xml",
"ecosystem": "maven",
"version_constraint": "0.10.0"
},
{
"name": "net.openhft:zero-allocation-hashing",
"manifest": "pom.xml",
"ecosystem": "maven",
"version_constraint": "2026.0"
},
{
"name": "one.edee.oss:proxycian_bytebuddy",
"manifest": "pom.xml",
"ecosystem": "maven",
"version_constraint": "1.4.0"
},
{
"name": "com.squareup.okhttp3:okhttp-jvm",
"manifest": "pom.xml",
"ecosystem": "maven",
"version_constraint": "${okhttp.version}"
},
{
"name": "org.apache.maven.plugins:maven-compiler-plugin",
"manifest": "pom.xml",
"ecosystem": "maven",
"version_constraint": "${maven.compiler.version}"
},
{
"name": "org.apache.maven.plugins:maven-toolchains-plugin",
"manifest": "pom.xml",
"ecosystem": "maven",
"version_constraint": "${maven.toolchains.version}"
},
{
"name": "com.fasterxml.jackson.core:jackson-core",
"manifest": "pom.xml",
"ecosystem": "maven",
"version_constraint": "${jackson.version}"
},
{
"name": "com.fasterxml.jackson.core:jackson-annotations",
"manifest": "pom.xml",
"ecosystem": "maven",
"version_constraint": "${jackson.annotations.version}"
},
{
"name": "com.fasterxml.jackson.datatype:jackson-datatype-jsr310",
"manifest": "pom.xml",
"ecosystem": "maven",
"version_constraint": "${jackson.version}"
},
{
"name": "com.fasterxml.jackson.core:jackson-databind",
"manifest": "pom.xml",
"ecosystem": "maven",
"version_constraint": "${jackson.version}"
},
{
"name": "com.fasterxml.jackson.dataformat:jackson-dataformat-yaml",
"manifest": "pom.xml",
"ecosystem": "maven",
"version_constraint": "${jackson.version}"
},
{
"name": "com.fasterxml.jackson.module:jackson-module-parameter-names",
"manifest": "pom.xml",
"ecosystem": "maven",
"version_constraint": "${jackson.version}"
},
{
"name": "com.fasterxml.jackson.datatype:jackson-datatype-jdk8",
"manifest": "pom.xml",
"ecosystem": "maven",
"version_constraint": "${jackson.version}"
},
{
"name": "org.yaml:snakeyaml",
"manifest": "pom.xml",
"ecosystem": "maven",
"version_constraint": "${snakeyaml.version}"
},
{
"name": "ch.qos.logback:logback-classic",
"manifest": "pom.xml",
"ecosystem": "maven",
"version_constraint": "${logback.version}"
},
{
"name": "org.slf4j:slf4j-api",
"manifest": "pom.xml",
"ecosystem": "maven",
"version_constraint": "${slf4j.version}"
},
{
"name": "commons-io:commons-io",
"manifest": "pom.xml",
"ecosystem": "maven",
"version_constraint": "2.21.0"
},
{
"name": "com.linecorp.armeria:armeria",
"manifest": "pom.xml",
"ecosystem": "maven",
"version_constraint": "${armeria.version}"
},
{
"name": "io.micrometer:micrometer-registry-prometheus",
"manifest": "pom.xml",
"ecosystem": "maven",
"version_constraint": "${micrometer.version}"
},
{
"name": "com.google.guava:guava",
"manifest": "pom.xml",
"ecosystem": "maven",
"version_constraint": "33.6.0-jre"
},
{
"name": "org.apache.commons:commons-text",
"manifest": "pom.xml",
"ecosystem": "maven",
"version_constraint": "1.15.0"
},
{
"name": "org.apache.commons:commons-lang3",
"manifest": "pom.xml",
"ecosystem": "maven",
"version_constraint": "3.20.0"
},
{
"name": "org.junit:junit-bom",
"manifest": "pom.xml",
"ecosystem": "maven",
"version_constraint": "${junit.jupiter.version}"
},
{
"name": "org.bouncycastle:bcprov-jdk18on",
"manifest": "pom.xml",
"ecosystem": "maven",
"version_constraint": "${bouncyCastle.version}"
},
{
"name": "org.bouncycastle:bcpkix-jdk18on",
"manifest": "pom.xml",
"ecosystem": "maven",
"version_constraint": "${bouncyCastle.version}"
},
{
"name": "org.bouncycastle:bcutil-jdk18on",
"manifest": "pom.xml",
"ecosystem": "maven",
"version_constraint": "${bouncyCastle.version}"
},
{
"name": "com.google.code.findbugs:jsr305",
"manifest": "pom.xml",
"ecosystem": "maven",
"version_constraint": "3.0.2"
},
{
"name": "org.apache.maven.scm:maven-scm-provider-gitexe",
"manifest": "pom.xml",
"ecosystem": "maven",
"version_constraint": "2.2.1"
}
],
"all_dependencies": {
"error": null,
"source": "github-sbom",
"packages": [
{
"name": "ch.qos.logback:logback-classic",
"direct": true,
"version": "1.4.12",
"ecosystem": "maven"
},
{
"name": "ch.qos.logback:logback-classic",
"direct": true,
"version": "1.5.38",
"ecosystem": "maven"
},
{
"name": "com.carrotsearch:hppc",
"direct": true,
"version": "0.10.0",
"ecosystem": "maven"
},
{
"name": "com.esotericsoftware:kryo",
"direct": true,
"version": "5.6.2",
"ecosystem": "maven"
},
{
"name": "com.fasterxml.jackson.core:jackson-annotations",
"direct": true,
"version": "2.22",
"ecosystem": "maven"
},
{
"name": "com.fasterxml.jackson.core:jackson-core",
"direct": true,
"version": "2.11.3",
"ecosystem": "maven"
},
{
"name": "com.fasterxml.jackson.core:jackson-core",
"direct": true,
"version": "2.22.1",
"ecosystem": "maven"
},
{
"name": "com.fasterxml.jackson.core:jackson-databind",
"direct": true,
"version": "2.12.7.1",
"ecosystem": "maven"
},
{
"name": "com.fasterxml.jackson.core:jackson-databind",
"direct": true,
"version": "2.22.1",
"ecosystem": "maven"
},
{
"name": "com.fasterxml.jackson.dataformat:jackson-dataformat-yaml",
"direct": true,
"version": "2.22.1",
"ecosystem": "maven"
},
{
"name": "com.fasterxml.jackson.datatype:jackson-datatype-jdk8",
"direct": true,
"version": "2.22.1",
"ecosystem": "maven"
},
{
"name": "com.fasterxml.jackson.datatype:jackson-datatype-jsr310",
"direct": true,
"version": "2.22.1",
"ecosystem": "maven"
},
{
"name": "com.fasterxml.jackson.module:jackson-module-parameter-names",
"direct": true,
"version": "2.22.1",
"ecosystem": "maven"
},
{
"name": "com.google.code.findbugs:jsr305",
"direct": true,
"version": "3.0.2",
"ecosystem": "maven"
},
{
"name": "com.google.guava:guava",
"direct": true,
"version": "33.6.0-jre",
"ecosystem": "maven"
},
{
"name": "com.linecorp.armeria:armeria",
"direct": true,
"version": "1.40.0",
"ecosystem": "maven"
},
{
"name": "com.squareup.okhttp3:okhttp-jvm",
"direct": true,
"version": "5.3.2",
"ecosystem": "maven"
},
{
"name": "commons-io:commons-io",
"direct": true,
"version": "2.21.0",
"ecosystem": "maven"
},
{
"name": "io.micrometer:micrometer-registry-prometheus",
"direct": true,
"version": "1.17.0",
"ecosystem": "maven"
},
{
"name": "net.bytebuddy:byte-buddy",
"direct": true,
"version": "1.17.7",
"ecosystem": "maven"
},
{
"name": "net.bytebuddy:byte-buddy",
"direct": true,
"version": "1.17.8",
"ecosystem": "maven"
},
{
"name": "net.bytebuddy:byte-buddy",
"direct": true,
"version": "1.18.3",
"ecosystem": "maven"
},
{
"name": "net.bytebuddy:byte-buddy-agent",
"direct": true,
"version": "1.17.7",
"ecosystem": "maven"
},
{
"name": "net.bytebuddy:byte-buddy-agent",
"direct": true,
"version": "1.17.8",
"ecosystem": "maven"
},
{
"name": "net.openhft:zero-allocation-hashing",
"direct": true,
"version": "2026.0",
"ecosystem": "maven"
},
{
"name": "one.edee.oss:proxycian_bytebuddy",
"direct": true,
"version": "1.4.0",
"ecosystem": "maven"
},
{
"name": "org.antlr:antlr4-runtime",
"direct": true,
"version": "4.13.2",
"ecosystem": "maven"
},
{
"name": "org.apache.commons:commons-lang3",
"direct": true,
"version": "3.11",
"ecosystem": "maven"
},
{
"name": "org.apache.commons:commons-lang3",
"direct": true,
"version": "3.20.0",
"ecosystem": "maven"
},
{
"name": "org.apache.commons:commons-text",
"direct": true,
"version": "1.15.0",
"ecosystem": "maven"
},
{
"name": "org.apache.maven.plugins:maven-compiler-plugin",
"direct": true,
"version": null,
"ecosystem": "maven"
},
{
"name": "org.bouncycastle:bcpkix-jdk18on",
"direct": true,
"version": "1.85",
"ecosystem": "maven"
},
{
"name": "org.bouncycastle:bcprov-jdk18on",
"direct": true,
"version": "1.85",
"ecosystem": "maven"
},
{
"name": "org.bouncycastle:bcutil-jdk18on",
"direct": true,
"version": "1.85",
"ecosystem": "maven"
},
{
"name": "org.slf4j:slf4j-api",
"direct": true,
"version": "2.0.17",
"ecosystem": "maven"
},
{
"name": "org.yaml:snakeyaml",
"direct": true,
"version": "2.6",
"ecosystem": "maven"
},
{
"name": "ch.qos.logback:logback-core",
"direct": false,
"version": "1.5.38",
"ecosystem": "maven"
},
{
"name": "com.aayushatharva.brotli4j:brotli4j",
"direct": false,
"version": "1.23.0",
"ecosystem": "maven"
},
{
"name": "com.aayushatharva.brotli4j:native-linux-x86_64",
"direct": false,
"version": "1.23.0",
"ecosystem": "maven"
},
{
"name": "com.aayushatharva.brotli4j:service",
"direct": false,
"version": "1.23.0",
"ecosystem": "maven"
},
{
"name": "com.carrotsearch.thirdparty:simple-xml-safe",
"direct": false,
"version": "2.7.1",
"ecosystem": "maven"
},
{
"name": "com.esotericsoftware:minlog",
"direct": false,
"version": "1.3.1",
"ecosystem": "maven"
},
{
"name": "com.esotericsoftware:reflectasm",
"direct": false,
"version": "1.11.9",
"ecosystem": "maven"
},
{
"name": "com.github.docker-java:docker-java-api",
"direct": false,
"version": "3.4.2",
"ecosystem": "maven"
},
{
"name": "com.github.docker-java:docker-java-transport",
"direct": false,
"version": "3.4.2",
"ecosystem": "maven"
},
{
"name": "com.github.docker-java:docker-java-transport-zerodep",
"direct": false,
"version": "3.4.2",
"ecosystem": "maven"
},
{
"name": "com.github.javafaker:javafaker",
"direct": false,
"version": "1.0.2",
"ecosystem": "maven"
},
{
"name": "com.github.mifmif:generex",
"direct": false,
"version": "1.0.2",
"ecosystem": "maven"
},
{
"name": "com.google.android:annotations",
"direct": false,
"version": "4.1.1.4",
"ecosystem": "maven"
},
{
"name": "com.google.api.grpc:proto-google-common-protos",
"direct": false,
"version": "2.64.1",
"ecosystem": "maven"
},
{
"name": "com.google.code.gson:gson",
"direct": false,
"version": "2.13.2",
"ecosystem": "maven"
},
{
"name": "com.google.errorprone:error_prone_annotations",
"direct": false,
"version": "2.47.0",
"ecosystem": "maven"
},
{
"name": "com.google.errorprone:error_prone_annotations",
"direct": false,
"version": "2.48.0",
"ecosystem": "maven"
},
{
"name": "com.google.guava:failureaccess",
"direct": false,
"version": "1.0.3",
"ecosystem": "maven"
},
{
"name": "com.google.guava:listenablefuture",
"direct": false,
"version": "9999.0-empty-to-avoid-conflict-with-guava",
"ecosystem": "maven"
},
{
"name": "com.google.j2objc:j2objc-annotations",
"direct": false,
"version": "2.8",
"ecosystem": "maven"
},
{
"name": "com.google.j2objc:j2objc-annotations",
"direct": false,
"version": "3.1",
"ecosystem": "maven"
},
{
"name": "com.google.protobuf:protobuf-java",
"direct": false,
"version": "3.25.8",
"ecosystem": "maven"
},
{
"name": "com.google.protobuf:protobuf-java-util",
"direct": false,
"version": "3.25.8",
"ecosystem": "maven"
},
{
"name": "com.graphql-java:graphql-java",
"direct": false,
"version": "25.0",
"ecosystem": "maven"
},
{
"name": "com.graphql-java:java-dataloader",
"direct": false,
"version": "6.0.0",
"ecosystem": "maven"
},
{
"name": "com.linecorp.armeria:armeria-graphql",
"direct": false,
"version": "1.40.0",
"ecosystem": "maven"
},
{
"name": "com.linecorp.armeria:armeria-graphql-protocol",
"direct": false,
"version": "1.40.0",
"ecosystem": "maven"
},
{
"name": "com.linecorp.armeria:armeria-grpc",
"direct": false,
"version": "1.40.0",
"ecosystem": "maven"
},
{
"name": "com.linecorp.armeria:armeria-grpc-protocol",
"direct": false,
"version": "1.40.0",
"ecosystem": "maven"
},
{
"name": "com.linecorp.armeria:armeria-protobuf",
"direct": false,
"version": "1.40.0",
"ecosystem": "maven"
},
{
"name": "com.querydsl:querydsl-core",
"direct": false,
"version": "4.0.1",
"ecosystem": "maven"
},
{
"name": "com.squareup.okhttp3:okhttp",
"direct": false,
"version": "5.1.0",
"ecosystem": "maven"
},
{
"name": "com.squareup.okio:okio",
"direct": false,
"version": "3.15.0",
"ecosystem": "maven"
},
{
"name": "com.squareup.okio:okio-jvm",
"direct": false,
"version": "3.16.4",
"ecosystem": "maven"
},
{
"name": "com.thoughtworks.qdox:qdox",
"direct": false,
"version": "2.2.0",
"ecosystem": "maven"
},
{
"name": "com.voodoodyne.jackson.jsog:jackson-jsog",
"direct": false,
"version": "1.1.1",
"ecosystem": "maven"
},
{
"name": "commons-codec:commons-codec",
"direct": false,
"version": "1.11",
"ecosystem": "maven"
},
{
"name": "commons-codec:commons-codec",
"direct": false,
"version": "1.18.0",
"ecosystem": "maven"
},
{
"name": "commons-codec:commons-codec",
"direct": false,
"version": "1.22.0",
"ecosystem": "maven"
},
{
"name": "commons-logging:commons-logging",
"direct": false,
"version": "1.2",
"ecosystem": "maven"
},
{
"name": "dk.brics.automaton:automaton",
"direct": false,
"version": "1.11-8",
"ecosystem": "maven"
},
{
"name": "io.evitadb:evita_api",
"direct": false,
"version": "2026.2.RC1-SNAPSHOT",
"ecosystem": "maven"
},
{
"name": "io.evitadb:evita_common",
"direct": false,
"version": "2026.2.RC1-SNAPSHOT",
"ecosystem": "maven"
},
{
"name": "io.evitadb:evita_engine",
"direct": false,
"version": "2026.2.RC1-SNAPSHOT",
"ecosystem": "maven"
},
{
"name": "io.evitadb:evita_export_fs",
"direct": false,
"version": "2026.2.RC1-SNAPSHOT",
"ecosystem": "maven"
},
{
"name": "io.evitadb:evita_export_s3",
"direct": false,
"version": "2026.2.RC1-SNAPSHOT",
"ecosystem": "maven"
},
{
"name": "io.evitadb:evita_external_api_core",
"direct": false,
"version": "2026.2.RC1-SNAPSHOT",
"ecosystem": "maven"
},
{
"name": "io.evitadb:evita_external_api_graphql",
"direct": false,
"version": "2026.2.RC1-SNAPSHOT",
"ecosystem": "maven"
},
{
"name": "io.evitadb:evita_external_api_grpc",
"direct": false,
"version": "2026.2.RC1-SNAPSHOT",
"ecosystem": "maven"
},
{
"name": "io.evitadb:evita_external_api_grpc_shared",
"direct": false,
"version": "2026.2.RC1-SNAPSHOT",
"ecosystem": "maven"
},
{
"name": "io.evitadb:evita_external_api_lab",
"direct": false,
"version": "2026.2.RC1-SNAPSHOT",
"ecosystem": "maven"
},
{
"name": "io.evitadb:evita_external_api_observability",
"direct": false,
"version": "2026.2.RC1-SNAPSHOT",
"ecosystem": "maven"
},
{
"name": "io.evitadb:evita_external_api_rest",
"direct": false,
"version": "2026.2.RC1-SNAPSHOT",
"ecosystem": "maven"
},
{
"name": "io.evitadb:evita_external_api_system",
"direct": false,
"version": "2026.2.RC1-SNAPSHOT",
"ecosystem": "maven"
},
{
"name": "io.evitadb:evita_functional_tests",
"direct": false,
"version": "2026.2.RC1-SNAPSHOT",
"ecosystem": "maven"
},
{
"name": "io.evitadb:evita_java_driver",
"direct": false,
"version": "2026.2.RC1-SNAPSHOT",
"ecosystem": "maven"
},
{
"name": "io.evitadb:evita_query",
"direct": false,
"version": "2026.2.RC1-SNAPSHOT",
"ecosystem": "maven"
},
{
"name": "io.evitadb:evita_roaring_bitmap",
"direct": false,
"version": "2026.2.RC1-SNAPSHOT",
"ecosystem": "maven"
},
{
"name": "io.evitadb:evita_server",
"direct": false,
"version": "2026.2.RC1-SNAPSHOT",
"ecosystem": "maven"
},
{
"name": "io.evitadb:evita_store_entity",
"direct": false,
"version": "2026.2.RC1-SNAPSHOT",
"ecosystem": "maven"
},
{
"name": "io.evitadb:evita_store_key_value",
"direct": false,
"version": "2026.2.RC1-SNAPSHOT",
"ecosystem": "maven"
},
{
"name": "io.evitadb:evita_store_server",
"direct": false,
"version": "2026.2.RC1-SNAPSHOT",
"ecosystem": "maven"
},
{
"name": "io.evitadb:evita_test_support",
"direct": false,
"version": "2026.2.RC1-SNAPSHOT",
"ecosystem": "maven"
},
{
"name": "io.evitadb:evita_traffic_engine",
"direct": false,
"version": "2026.2.RC1-SNAPSHOT",
"ecosystem": "maven"
},
{
"name": "io.grpc:grpc-api",
"direct": false,
"version": "1.81.0",
"ecosystem": "maven"
},
{
"name": "io.grpc:grpc-api",
"direct": false,
"version": "1.82.2",
"ecosystem": "maven"
},
{
"name": "io.grpc:grpc-context",
"direct": false,
"version": "1.81.0",
"ecosystem": "maven"
},
{
"name": "io.grpc:grpc-context",
"direct": false,
"version": "1.82.2",
"ecosystem": "maven"
},
{
"name": "io.grpc:grpc-core",
"direct": false,
"version": "1.81.0",
"ecosystem": "maven"
},
{
"name": "io.grpc:grpc-core",
"direct": false,
"version": "1.82.2",
"ecosystem": "maven"
},
{
"name": "io.grpc:grpc-protobuf",
"direct": false,
"version": "1.81.0",
"ecosystem": "maven"
},
{
"name": "io.grpc:grpc-protobuf",
"direct": false,
"version": "1.82.2",
"ecosystem": "maven"
},
{
"name": "io.grpc:grpc-protobuf-lite",
"direct": false,
"version": "1.81.0",
"ecosystem": "maven"
},
{
"name": "io.grpc:grpc-protobuf-lite",
"direct": false,
"version": "1.82.2",
"ecosystem": "maven"
},
{
"name": "io.grpc:grpc-services",
"direct": false,
"version": "1.81.0",
"ecosystem": "maven"
},
{
"name": "io.grpc:grpc-stub",
"direct": false,
"version": "1.81.0",
"ecosystem": "maven"
},
{
"name": "io.grpc:grpc-stub",
"direct": false,
"version": "1.82.2",
"ecosystem": "maven"
},
{
"name": "io.grpc:grpc-util",
"direct": false,
"version": "1.81.0",
"ecosystem": "maven"
},
{
"name": "io.micrometer:context-propagation",
"direct": false,
"version": "1.2.1",
"ecosystem": "maven"
},
{
"name": "io.micrometer:micrometer-commons",
"direct": false,
"version": "1.17.0",
"ecosystem": "maven"
},
{
"name": "io.micrometer:micrometer-core",
"direct": false,
"version": "1.17.0",
"ecosystem": "maven"
},
{
"name": "io.micrometer:micrometer-observation",
"direct": false,
"version": "1.17.0",
"ecosystem": "maven"
},
{
"name": "io.minio:minio",
"direct": false,
"version": "8.6.0",
"ecosystem": "maven"
},
{
"name": "io.netty:netty-buffer",
"direct": false,
"version": "4.2.15.Final",
"ecosystem": "maven"
},
{
"name": "io.netty:netty-codec-base",
"direct": false,
"version": "4.2.15.Final",
"ecosystem": "maven"
},
{
"name": "io.netty:netty-codec-compression",
"direct": false,
"version": "4.2.15.Final",
"ecosystem": "maven"
},
{
"name": "io.netty:netty-codec-dns",
"direct": false,
"version": "4.2.15.Final",
"ecosystem": "maven"
},
{
"name": "io.netty:netty-codec-haproxy",
"direct": false,
"version": "4.2.15.Final",
"ecosystem": "maven"
},
{
"name": "io.netty:netty-codec-http",
"direct": false,
"version": "4.2.15.Final",
"ecosystem": "maven"
},
{
"name": "io.netty:netty-codec-http2",
"direct": false,
"version": "4.2.15.Final",
"ecosystem": "maven"
},
{
"name": "io.netty:netty-codec-socks",
"direct": false,
"version": "4.2.15.Final",
"ecosystem": "maven"
},
{
"name": "io.netty:netty-common",
"direct": false,
"version": "4.2.15.Final",
"ecosystem": "maven"
},
{
"name": "io.netty:netty-handler",
"direct": false,
"version": "4.2.15.Final",
"ecosystem": "maven"
},
{
"name": "io.netty:netty-handler-proxy",
"direct": false,
"version": "4.2.15.Final",
"ecosystem": "maven"
},
{
"name": "io.netty:netty-resolver",
"direct": false,
"version": "4.2.15.Final",
"ecosystem": "maven"
},
{
"name": "io.netty:netty-resolver-dns",
"direct": false,
"version": "4.2.15.Final",
"ecosystem": "maven"
},
{
"name": "io.netty:netty-resolver-dns-classes-macos",
"direct": false,
"version": "4.2.15.Final",
"ecosystem": "maven"
},
{
"name": "io.netty:netty-resolver-dns-native-macos",
"direct": false,
"version": "4.2.15.Final",
"ecosystem": "maven"
},
{
"name": "io.netty:netty-tcnative-boringssl-static",
"direct": false,
"version": "2.0.77.Final",
"ecosystem": "maven"
},
{
"name": "io.netty:netty-tcnative-classes",
"direct": false,
"version": "2.0.77.Final",
"ecosystem": "maven"
},
{
"name": "io.netty:netty-transport",
"direct": false,
"version": "4.2.15.Final",
"ecosystem": "maven"
},
{
"name": "io.netty:netty-transport-classes-epoll",
"direct": false,
"version": "4.2.15.Final",
"ecosystem": "maven"
},
{
"name": "io.netty:netty-transport-classes-kqueue",
"direct": false,
"version": "4.2.15.Final",
"ecosystem": "maven"
},
{
"name": "io.netty:netty-transport-native-epoll",
"direct": false,
"version": "4.2.15.Final",
"ecosystem": "maven"
},
{
"name": "io.netty:netty-transport-native-kqueue",
"direct": false,
"version": "4.2.15.Final",
"ecosystem": "maven"
},
{
"name": "io.netty:netty-transport-native-unix-common",
"direct": false,
"version": "4.2.15.Final",
"ecosystem": "maven"
},
{
"name": "io.opentelemetry.semconv:opentelemetry-semconv",
"direct": false,
"version": "1.41.1",
"ecosystem": "maven"
},
{
"name": "io.opentelemetry:opentelemetry-api",
"direct": false,
"version": "1.64.0",
"ecosystem": "maven"
},
{
"name": "io.opentelemetry:opentelemetry-common",
"direct": false,
"version": "1.64.0",
"ecosystem": "maven"
},
{
"name": "io.opentelemetry:opentelemetry-context",
"direct": false,
"version": "1.64.0",
"ecosystem": "maven"
},
{
"name": "io.opentelemetry:opentelemetry-exporter-common",
"direct": false,
"version": "1.64.0",
"ecosystem": "maven"
},
{
"name": "io.opentelemetry:opentelemetry-exporter-logging",
"direct": false,
"version": "1.64.0",
"ecosystem": "maven"
},
{
"name": "io.opentelemetry:opentelemetry-exporter-otlp",
"direct": false,
"version": "1.64.0",
"ecosystem": "maven"
},
{
"name": "io.opentelemetry:opentelemetry-exporter-otlp-common",
"direct": false,
"version": "1.64.0",
"ecosystem": "maven"
},
{
"name": "io.opentelemetry:opentelemetry-exporter-sender-okhttp",
"direct": false,
"version": "1.64.0",
"ecosystem": "maven"
},
{
"name": "io.opentelemetry:opentelemetry-sdk",
"direct": false,
"version": "1.64.0",
"ecosystem": "maven"
},
{
"name": "io.opentelemetry:opentelemetry-sdk-common",
"direct": false,
"version": "1.64.0",
"ecosystem": "maven"
},
{
"name": "io.opentelemetry:opentelemetry-sdk-extension-autoconfigure",
"direct": false,
"version": "1.64.0",
"ecosystem": "maven"
},
{
"name": "io.opentelemetry:opentelemetry-sdk-extension-autoconfigure-spi",
"direct": false,
"version": "1.64.0",
"ecosystem": "maven"
},
{
"name": "io.opentelemetry:opentelemetry-sdk-logs",
"direct": false,
"version": "1.64.0",
"ecosystem": "maven"
},
{
"name": "io.opentelemetry:opentelemetry-sdk-metrics",
"direct": false,
"version": "1.64.0",
"ecosystem": "maven"
},
{
"name": "io.opentelemetry:opentelemetry-sdk-testing",
"direct": false,
"version": "1.64.0",
"ecosystem": "maven"
},
{
"name": "io.opentelemetry:opentelemetry-sdk-trace",
"direct": false,
"version": "1.64.0",
"ecosystem": "maven"
},
{
"name": "io.perfmark:perfmark-api",
"direct": false,
"version": "0.27.0",
"ecosystem": "maven"
},
{
"name": "io.prometheus:prometheus-metrics-config",
"direct": false,
"version": "1.7.0",
"ecosystem": "maven"
},
{
"name": "io.prometheus:prometheus-metrics-config",
"direct": false,
"version": "1.8.0",
"ecosystem": "maven"
},
{
"name": "io.prometheus:prometheus-metrics-core",
"direct": false,
"version": "1.7.0",
"ecosystem": "maven"
},
{
"name": "io.prometheus:prometheus-metrics-core",
"direct": false,
"version": "1.8.0",
"ecosystem": "maven"
},
{
"name": "io.prometheus:prometheus-metrics-exporter-common",
"direct": false,
"version": "1.8.0",
"ecosystem": "maven"
},
{
"name": "io.prometheus:prometheus-metrics-exposition-formats",
"direct": false,
"version": "1.7.0",
"ecosystem": "maven"
},
{
"name": "io.prometheus:prometheus-metrics-exposition-formats",
"direct": false,
"version": "1.8.0",
"ecosystem": "maven"
},
{
"name": "io.prometheus:prometheus-metrics-exposition-textformats",
"direct": false,
"version": "1.7.0",
"ecosystem": "maven"
},
{
"name": "io.prometheus:prometheus-metrics-exposition-textformats",
"direct": false,
"version": "1.8.0",
"ecosystem": "maven"
},
{
"name": "io.prometheus:prometheus-metrics-instrumentation-jvm",
"direct": false,
"version": "1.8.0",
"ecosystem": "maven"
},
{
"name": "io.prometheus:prometheus-metrics-model",
"direct": false,
"version": "1.7.0",
"ecosystem": "maven"
},
{
"name": "io.prometheus:prometheus-metrics-model",
"direct": false,
"version": "1.8.0",
"ecosystem": "maven"
},
{
"name": "io.prometheus:prometheus-metrics-tracer-common",
"direct": false,
"version": "1.7.0",
"ecosystem": "maven"
},
{
"name": "io.prometheus:prometheus-metrics-tracer-initializer",
"direct": false,
"version": "1.8.0",
"ecosystem": "maven"
},
{
"name": "io.prometheus:prometheus-metrics-tracer-otel",
"direct": false,
"version": "1.8.0",
"ecosystem": "maven"
},
{
"name": "io.prometheus:prometheus-metrics-tracer-otel-agent",
"direct": false,
"version": "1.8.0",
"ecosystem": "maven"
},
{
"name": "io.rest-assured:json-path",
"direct": false,
"version": "6.0.0",
"ecosystem": "maven"
},
{
"name": "io.rest-assured:rest-assured",
"direct": false,
"version": "6.0.0",
"ecosystem": "maven"
},
{
"name": "io.rest-assured:rest-assured-common",
"direct": false,
"version": "6.0.0",
"ecosystem": "maven"
},
{
"name": "io.rest-assured:xml-path",
"direct": false,
"version": "6.0.0",
"ecosystem": "maven"
},
{
"name": "io.swagger.core.v3:swagger-annotations",
"direct": false,
"version": "2.2.43",
"ecosystem": "maven"
},
{
"name": "io.swagger.core.v3:swagger-core",
"direct": false,
"version": "2.2.43",
"ecosystem": "maven"
},
{
"name": "io.swagger.core.v3:swagger-models",
"direct": false,
"version": "2.2.43",
"ecosystem": "maven"
},
{
"name": "jakarta.activation:jakarta.activation-api",
"direct": false,
"version": "1.2.2",
"ecosystem": "maven"
},
{
"name": "jakarta.validation:jakarta.validation-api",
"direct": false,
"version": "2.0.2",
"ecosystem": "maven"
},
{
"name": "jakarta.xml.bind:jakarta.xml.bind-api",
"direct": false,
"version": "2.3.3",
"ecosystem": "maven"
},
{
"name": "junit:junit",
"direct": false,
"version": "4.13",
"ecosystem": "maven"
},
{
"name": "junit:junit",
"direct": false,
"version": "4.13.2",
"ecosystem": "maven"
},
{
"name": "net.java.dev.jna:jna",
"direct": false,
"version": "5.13.0",
"ecosystem": "maven"
},
{
"name": "net.javacrumbs.json-unit:json-unit",
"direct": false,
"version": "5.1.1",
"ecosystem": "maven"
},
{
"name": "net.javacrumbs.json-unit:json-unit-assertj",
"direct": false,
"version": "6.0.1",
"ecosystem": "maven"
},
{
"name": "net.javacrumbs.json-unit:json-unit-core",
"direct": false,
"version": "5.1.1",
"ecosystem": "maven"
},
{
"name": "net.steppschuh.markdowngenerator:markdowngenerator",
"direct": false,
"version": "1.3.1.1",
"ecosystem": "maven"
},
{
"name": "one.edee.oss:pmptt_core",
"direct": false,
"version": "1.3.1",
"ecosystem": "maven"
},
{
"name": "org.apache.commons:commons-compress",
"direct": false,
"version": "1.28.0",
"ecosystem": "maven"
},
{
"name": "org.apache.groovy:groovy",
"direct": false,
"version": "5.0.3",
"ecosystem": "maven"
},
{
"name": "org.apache.groovy:groovy-json",
"direct": false,
"version": "5.0.3",
"ecosystem": "maven"
},
{
"name": "org.apache.groovy:groovy-xml",
"direct": false,
"version": "5.0.3",
"ecosystem": "maven"
},
{
"name": "org.apache.httpcomponents.client5:httpclient5",
"direct": false,
"version": "5.6.2",
"ecosystem": "maven"
},
{
"name": "org.apache.httpcomponents.core5:httpcore5",
"direct": false,
"version": "5.4.3",
"ecosystem": "maven"
},
{
"name": "org.apache.httpcomponents.core5:httpcore5-h2",
"direct": false,
"version": "5.4.3",
"ecosystem": "maven"
},
{
"name": "org.apache.httpcomponents:httpclient",
"direct": false,
"version": "4.5.13",
"ecosystem": "maven"
},
{
"name": "org.apache.httpcomponents:httpcore",
"direct": false,
"version": "4.4.13",
"ecosystem": "maven"
},
{
"name": "org.apache.httpcomponents:httpmime",
"direct": false,
"version": "4.5.13",
"ecosystem": "maven"
},
{
"name": "org.apache.logging.log4j:log4j-to-slf4j",
"direct": false,
"version": "2.20.0",
"ecosystem": "maven"
},
{
"name": "org.apache.maven.plugins:maven-javadoc-plugin",
"direct": false,
"version": "3.12.0",
"ecosystem": "maven"
},
{
"name": "org.apache.maven.plugins:maven-shade-plugin",
"direct": false,
"version": null,
"ecosystem": "maven"
},
{
"name": "org.apiguardian:apiguardian-api",
"direct": false,
"version": "1.1.2",
"ecosystem": "maven"
},
{
"name": "org.assertj:assertj-core",
"direct": false,
"version": "3.27.7",
"ecosystem": "maven"
},
{
"name": "org.awaitility:awaitility",
"direct": false,
"version": "4.3.0",
"ecosystem": "maven"
},
{
"name": "org.ccil.cowan.tagsoup:tagsoup",
"direct": false,
"version": "1.2.1",
"ecosystem": "maven"
},
{
"name": "org.codehaus.mojo:animal-sniffer-annotations",
"direct": false,
"version": "1.27",
"ecosystem": "maven"
},
{
"name": "org.curioswitch.curiostack:protobuf-jackson",
"direct": false,
"version": "2.8.1",
"ecosystem": "maven"
},
{
"name": "org.elasticsearch:elasticsearch",
"direct": false,
"version": "7.6.2",
"ecosystem": "maven"
},
{
"name": "org.hamcrest:hamcrest",
"direct": false,
"version": "2.2",
"ecosystem": "maven"
},
{
"name": "org.hamcrest:hamcrest-core",
"direct": false,
"version": "3.0",
"ecosystem": "maven"
},
{
"name": "org.hdrhistogram:HdrHistogram",
"direct": false,
"version": "2.2.2",
"ecosystem": "maven"
},
{
"name": "org.jetbrains.kotlin:kotlin-stdlib",
"direct": false,
"version": "2.2.21",
"ecosystem": "maven"
},
{
"name": "org.jetbrains:annotations",
"direct": false,
"version": "13.0",
"ecosystem": "maven"
},
{
"name": "org.jspecify:jspecify",
"direct": false,
"version": "1.0.0",
"ecosystem": "maven"
},
{
"name": "org.junit.jupiter:junit-jupiter",
"direct": false,
"version": "6.1.1",
"ecosystem": "maven"
},
{
"name": "org.junit.jupiter:junit-jupiter-api",
"direct": false,
"version": "6.1.1",
"ecosystem": "maven"
},
{
"name": "org.junit.jupiter:junit-jupiter-engine",
"direct": false,
"version": "6.1.1",
"ecosystem": "maven"
},
{
"name": "org.junit.jupiter:junit-jupiter-params",
"direct": false,
"version": "6.1.1",
"ecosystem": "maven"
},
{
"name": "org.junit.platform:junit-platform-commons",
"direct": false,
"version": "6.1.1",
"ecosystem": "maven"
},
{
"name": "org.junit.platform:junit-platform-engine",
"direct": false,
"version": "6.1.1",
"ecosystem": "maven"
},
{
"name": "org.junit.platform:junit-platform-launcher",
"direct": false,
"version": "6.1.1",
"ecosystem": "maven"
},
{
"name": "org.mockito:mockito-core",
"direct": false,
"version": "5.22.0",
"ecosystem": "maven"
},
{
"name": "org.mockito:mockito-inline",
"direct": false,
"version": "5.2.0",
"ecosystem": "maven"
},
{
"name": "org.mockito:mockito-junit-jupiter",
"direct": false,
"version": null,
"ecosystem": "maven"
},
{
"name": "org.mockito:mockito-junit-jupiter",
"direct": false,
"version": "5.22.0",
"ecosystem": "maven"
},
{
"name": "org.objenesis:objenesis",
"direct": false,
"version": "3.3",
"ecosystem": "maven"
},
{
"name": "org.objenesis:objenesis",
"direct": false,
"version": "3.4",
"ecosystem": "maven"
},
{
"name": "org.openjdk.jmh:jmh-core",
"direct": false,
"version": "1.37",
"ecosystem": "maven"
},
{
"name": "org.openjdk.jmh:jmh-generator-annprocess",
"direct": false,
"version": "1.37",
"ecosystem": "maven"
},
{
"name": "org.openjdk.jol:jol-core",
"direct": false,
"version": "0.17",
"ecosystem": "maven"
},
{
"name": "org.opentest4j:opentest4j",
"direct": false,
"version": "1.3.0",
"ecosystem": "maven"
},
{
"name": "org.postgresql:postgresql",
"direct": false,
"version": null,
"ecosystem": "maven"
},
{
"name": "org.projectlombok:lombok",
"direct": false,
"version": null,
"ecosystem": "maven"
},
{
"name": "org.projectlombok:lombok",
"direct": false,
"version": "1.18.46",
"ecosystem": "maven"
},
{
"name": "org.reactivestreams:reactive-streams",
"direct": false,
"version": "1.0.3",
"ecosystem": "maven"
},
{
"name": "org.reactivestreams:reactive-streams",
"direct": false,
"version": "1.0.4",
"ecosystem": "maven"
},
{
"name": "org.rnorth.duct-tape:duct-tape",
"direct": false,
"version": "1.0.8",
"ecosystem": "maven"
},
{
"name": "org.roaringbitmap:RoaringBitmap",
"direct": false,
"version": null,
"ecosystem": "maven"
},
{
"name": "org.springframework.boot:spring-boot-autoconfigure",
"direct": false,
"version": "2.3.5",
"ecosystem": "maven"
},
{
"name": "org.springframework.boot:spring-boot-maven-plugin",
"direct": false,
"version": null,
"ecosystem": "maven"
},
{
"name": "org.springframework.boot:spring-boot-starter",
"direct": false,
"version": null,
"ecosystem": "maven"
},
{
"name": "org.springframework.boot:spring-boot-starter-jdbc",
"direct": false,
"version": null,
"ecosystem": "maven"
},
{
"name": "org.springframework.data:spring-data-elasticsearch",
"direct": false,
"version": "4.0.0.RELEASE",
"ecosystem": "maven"
},
{
"name": "org.springframework:spring-test",
"direct": false,
"version": "5.2.10.RELEASE",
"ecosystem": "maven"
},
{
"name": "org.springframework:spring-web",
"direct": false,
"version": "5.2.10.RELEASE",
"ecosystem": "maven"
},
{
"name": "org.testcontainers:junit-jupiter",
"direct": false,
"version": "1.21.4",
"ecosystem": "maven"
},
{
"name": "org.testcontainers:testcontainers",
"direct": false,
"version": "1.21.4",
"ecosystem": "maven"
},
{
"name": "org.xerial.snappy:snappy-java",
"direct": false,
"version": "1.1.10.7",
"ecosystem": "maven"
},
{
"name": "software.amazon.awssdk:annotations",
"direct": false,
"version": "2.47.5",
"ecosystem": "maven"
},
{
"name": "software.amazon.awssdk:apache5-client",
"direct": false,
"version": "2.47.5",
"ecosystem": "maven"
},
{
"name": "software.amazon.awssdk:arns",
"direct": false,
"version": "2.47.5",
"ecosystem": "maven"
},
{
"name": "software.amazon.awssdk:auth",
"direct": false,
"version": "2.47.5",
"ecosystem": "maven"
},
{
"name": "software.amazon.awssdk:aws-core",
"direct": false,
"version": "2.47.5",
"ecosystem": "maven"
},
{
"name": "software.amazon.awssdk:aws-query-protocol",
"direct": false,
"version": "2.47.5",
"ecosystem": "maven"
},
{
"name": "software.amazon.awssdk:aws-xml-protocol",
"direct": false,
"version": "2.47.5",
"ecosystem": "maven"
},
{
"name": "software.amazon.awssdk:checksums",
"direct": false,
"version": "2.47.5",
"ecosystem": "maven"
},
{
"name": "software.amazon.awssdk:checksums-spi",
"direct": false,
"version": "2.47.5",
"ecosystem": "maven"
},
{
"name": "software.amazon.awssdk:crt-core",
"direct": false,
"version": "2.47.5",
"ecosystem": "maven"
},
{
"name": "software.amazon.awssdk:endpoints-spi",
"direct": false,
"version": "2.47.5",
"ecosystem": "maven"
},
{
"name": "software.amazon.awssdk:http-auth",
"direct": false,
"version": "2.47.5",
"ecosystem": "maven"
},
{
"name": "software.amazon.awssdk:http-auth-aws",
"direct": false,
"version": "2.47.5",
"ecosystem": "maven"
},
{
"name": "software.amazon.awssdk:http-auth-aws-eventstream",
"direct": false,
"version": "2.47.5",
"ecosystem": "maven"
},
{
"name": "software.amazon.awssdk:http-auth-spi",
"direct": false,
"version": "2.47.5",
"ecosystem": "maven"
},
{
"name": "software.amazon.awssdk:http-client-spi",
"direct": false,
"version": "2.47.5",
"ecosystem": "maven"
},
{
"name": "software.amazon.awssdk:identity-spi",
"direct": false,
"version": "2.47.5",
"ecosystem": "maven"
},
{
"name": "software.amazon.awssdk:json-utils",
"direct": false,
"version": "2.47.5",
"ecosystem": "maven"
},
{
"name": "software.amazon.awssdk:metrics-spi",
"direct": false,
"version": "2.47.5",
"ecosystem": "maven"
},
{
"name": "software.amazon.awssdk:profiles",
"direct": false,
"version": "2.47.5",
"ecosystem": "maven"
},
{
"name": "software.amazon.awssdk:protocol-core",
"direct": false,
"version": "2.47.5",
"ecosystem": "maven"
},
{
"name": "software.amazon.awssdk:regions",
"direct": false,
"version": "2.47.5",
"ecosystem": "maven"
},
{
"name": "software.amazon.awssdk:retries",
"direct": false,
"version": "2.47.5",
"ecosystem": "maven"
},
{
"name": "software.amazon.awssdk:retries-spi",
"direct": false,
"version": "2.47.5",
"ecosystem": "maven"
},
{
"name": "software.amazon.awssdk:s3",
"direct": false,
"version": "2.47.5",
"ecosystem": "maven"
},
{
"name": "software.amazon.awssdk:sdk-core",
"direct": false,
"version": "2.47.5",
"ecosystem": "maven"
},
{
"name": "software.amazon.awssdk:third-party-jackson-core",
"direct": false,
"version": "2.47.5",
"ecosystem": "maven"
},
{
"name": "software.amazon.awssdk:utils",
"direct": false,
"version": "2.47.5",
"ecosystem": "maven"
},
{
"name": "software.amazon.awssdk:utils-lite",
"direct": false,
"version": "2.47.5",
"ecosystem": "maven"
},
{
"name": "software.amazon.eventstream:eventstream",
"direct": false,
"version": "1.0.1",
"ecosystem": "maven"
}
],
"collected": true,
"truncated": false,
"total_count": 284,
"direct_count": 36,
"indirect_count": 248
}
},
"maintainership": {
"issues": {
"open_prs": 1,
"merged_prs": 699,
"open_issues": 63,
"closed_ratio": 0.858,
"closed_issues": 381,
"closed_unmerged_prs": 168
},
"bus_factor": 1,
"bot_contributors": 1,
"top_contributors": [
{
"type": "User",
"login": "novoj",
"commits": 4483,
"avatar_url": "https://avatars.githubusercontent.com/u/202912?v=4"
},
{
"type": "User",
"login": "lukashornych",
"commits": 1451,
"avatar_url": "https://avatars.githubusercontent.com/u/13931450?v=4"
},
{
"type": "User",
"login": "Khertys",
"commits": 31,
"avatar_url": "https://avatars.githubusercontent.com/u/24245231?v=4"
},
{
"type": "User",
"login": "fgpwo",
"commits": 14,
"avatar_url": "https://avatars.githubusercontent.com/u/17588347?v=4"
},
{
"type": "User",
"login": "Gift-505",
"commits": 12,
"avatar_url": "https://avatars.githubusercontent.com/u/101923278?v=4"
},
{
"type": "User",
"login": "fgmpe",
"commits": 2,
"avatar_url": "https://avatars.githubusercontent.com/u/6713507?v=4"
},
{
"type": "User",
"login": "xxBedy",
"commits": 2,
"avatar_url": "https://avatars.githubusercontent.com/u/864920?v=4"
}
],
"contributors_sampled": 7,
"top_contributor_share": 0.748
},
"quality_signals": {
"has_ci": true,
"has_tests": true,
"ci_workflows": [
"benchmark-clean.yml",
"benchmark-hook.yml",
"benchmark.yml",
"ci-dev-documentation.yml",
"ci-dev.yml",
"ci-master.yml",
"ci-performance.yml",
"ci-release.yml",
"docker-canary.yml",
"docker-latest.yml",
"documentation-tests.yml",
"long-running-tests.yml",
"notify-release.yml",
"pr-review.yml"
],
"has_docs_dir": true,
"linter_configs": [],
"has_editorconfig": false,
"has_linter_config": false,
"has_precommit_config": false
},
"security_signals": {
"lockfiles": [],
"scorecard": {
"checks": [
{
"name": "Binary-Artifacts",
"score": 9,
"reason": "binaries present in source code",
"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": "4 out of 4 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": 0,
"reason": "Found 0/9 approved changesets -- score normalized to 0",
"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": 0,
"reason": "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": 9,
"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 21 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": 8,
"reason": "dependency not pinned by hash detected -- score normalized to 8",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#pinned-dependencies"
},
{
"name": "SAST",
"score": 10,
"reason": "SAST tool is run on all commits",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#sast"
},
{
"name": "Security-Policy",
"score": 10,
"reason": "security policy file 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": 0,
"reason": "71 existing vulnerabilities detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#vulnerabilities"
}
],
"commit": "6499fe48009e633a937d8a4f71f8703d00a3d608",
"ran_at": "2026-07-24T11:59:57Z",
"aggregate_score": 4.7,
"scorecard_version": "v5.5.0"
},
"has_codeql_workflow": false,
"has_security_policy": true,
"has_dependabot_config": true
},
"contribution_flow": {
"collected": true,
"ci_last_run_at": "2026-07-24T08:44:20Z",
"oldest_open_prs": [
{
"number": 1313,
"created_at": "2026-07-24T11:04:34Z",
"last_comment_at": "2026-07-24T11:51:12Z",
"last_comment_author": "claude"
}
],
"last_merged_pr_at": "2026-07-23T20:55:49Z",
"ci_last_conclusion": "SUCCESS",
"oldest_open_issues": [
{
"number": 12,
"created_at": "2023-02-24T21:36:27Z",
"last_comment_at": "2023-02-24T21:37:30Z",
"last_comment_author": "novoj"
},
{
"number": 13,
"created_at": "2023-02-24T21:56:11Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 17,
"created_at": "2023-02-24T22:08:47Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 18,
"created_at": "2023-02-24T22:11:52Z",
"last_comment_at": "2024-06-24T07:27:13Z",
"last_comment_author": "novoj"
},
{
"number": 22,
"created_at": "2023-02-24T22:28:33Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 23,
"created_at": "2023-02-24T22:30:06Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 24,
"created_at": "2023-02-24T22:32:27Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 25,
"created_at": "2023-02-24T22:34:17Z",
"last_comment_at": "2023-03-15T09:08:05Z",
"last_comment_author": "lukashornych"
},
{
"number": 37,
"created_at": "2023-03-02T07:17:55Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 39,
"created_at": "2023-03-02T12:54:28Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 49,
"created_at": "2023-03-15T09:18:46Z",
"last_comment_at": "2023-05-10T08:24:26Z",
"last_comment_author": "lukashornych"
},
{
"number": 102,
"created_at": "2023-05-03T14:08:37Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 105,
"created_at": "2023-05-04T08:17:47Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 109,
"created_at": "2023-05-07T19:11:08Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 138,
"created_at": "2023-05-31T11:10:46Z",
"last_comment_at": "2024-06-26T10:16:19Z",
"last_comment_author": "novoj"
},
{
"number": 146,
"created_at": "2023-06-08T10:41:21Z",
"last_comment_at": "2024-09-05T13:39:39Z",
"last_comment_author": "novoj"
},
{
"number": 155,
"created_at": "2023-06-28T13:37:39Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 219,
"created_at": "2023-08-11T12:21:52Z",
"last_comment_at": "2024-06-27T13:27:56Z",
"last_comment_author": "lukashornych"
},
{
"number": 226,
"created_at": "2023-08-21T15:39:30Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 244,
"created_at": "2023-08-31T09:04:56Z",
"last_comment_at": null,
"last_comment_author": null
}
]
}
},
"config": {
"disabled_metrics": [],
"disabled_categories": [],
"disabled_components": {}
},
"source": {
"url": "https://github.com/FgForrest/evitaDB",
"host": "github.com",
"name": "evitaDB",
"owner": "FgForrest"
},
"metrics": {
"overall": {
"key": "overall",
"band": "moderate",
"name": "Overall health",
"note": null,
"notes": [],
"value": 68,
"inputs": {
"security": 48,
"vitality": 96,
"community": 47,
"governance": 61,
"engineering": 81
},
"components": []
},
"categories": [
{
"key": "vitality",
"band": "excellent",
"name": "Vitality",
"value": 96,
"weight": 0.22,
"metrics": [
{
"key": "development_activity",
"band": "excellent",
"name": "Development activity",
"note": null,
"notes": [],
"value": 100,
"inputs": {
"commits_last_year": 1545,
"human_commit_share": 1,
"days_since_last_push": 0,
"active_weeks_last_year": 52
},
"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": "52/52 weeks with commits",
"points": 36,
"status": "met",
"details": [
{
"code": "commit_cadence_weeks",
"params": {
"weeks": 52
}
}
],
"max_points": 36
},
{
"key": "commit_volume",
"name": "Commit volume",
"detail": "1545 commits in the last year",
"points": 18,
"status": "met",
"details": [
{
"code": "commits_last_year",
"params": {
"count": 1545
}
}
],
"max_points": 18
},
{
"key": "openssf_scorecard_maintained",
"name": "OpenSSF Scorecard: Maintained",
"detail": "30 commit(s) and 21 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": 100,
"latest_release_tag": "v2026.1.20",
"releases_from_tags": false,
"days_since_latest_release": 0,
"mean_days_between_releases": 6.7
},
"components": [
{
"key": "ships_releases",
"name": "Ships releases",
"detail": "100 releases published",
"points": 27,
"status": "met",
"details": [
{
"code": "releases_published",
"params": {
"count": 100
}
}
],
"max_points": 27
},
{
"key": "release_recency",
"name": "Release recency",
"detail": "latest release 0 days ago",
"points": 36,
"status": "met",
"details": [
{
"code": "release_recency",
"params": {
"days": 0
}
}
],
"max_points": 36
},
{
"key": "release_cadence",
"name": "Release cadence",
"detail": "a release every ~6.7 days",
"points": 27,
"status": "met",
"details": [
{
"code": "release_cadence",
"params": {
"gap": 6.7
}
}
],
"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": 0,
"days_since_last_human_commit_is_floor": false
},
"components": [
{
"key": "project_is_still_maintained",
"name": "Project is still maintained",
"detail": "last human commit 0 days ago",
"points": 100,
"status": "met",
"details": [
{
"code": "abandonment_maintained",
"params": {
"days": 0
}
}
],
"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": 47,
"weight": 0.18,
"metrics": [
{
"key": "popularity",
"band": "at_risk",
"name": "Popularity & adoption",
"note": null,
"notes": [],
"value": 36,
"inputs": {
"forks": 7,
"stars": 70,
"watchers": 1,
"growth_state": "unverified",
"growth_factor_pct": 100,
"growth_unverified_reason": "no_history"
},
"components": [
{
"key": "stars",
"name": "Stars",
"detail": "70 stars",
"points": 29.8,
"status": "partial",
"details": [
{
"code": "stars",
"params": {
"count": 70
}
}
],
"max_points": 60
},
{
"key": "forks",
"name": "Forks",
"detail": "7 forks",
"points": 6.5,
"status": "partial",
"details": [
{
"code": "forks",
"params": {
"count": 7
}
}
],
"max_points": 25
},
{
"key": "watchers",
"name": "Watchers",
"detail": "1 watchers",
"points": 0,
"status": "missed",
"details": [
{
"code": "watchers",
"params": {
"count": 1
}
}
],
"max_points": 15
}
]
},
{
"key": "community_health",
"band": "moderate",
"name": "Community health",
"note": null,
"notes": [],
"value": 59,
"inputs": {
"has_readme": true,
"has_license": true,
"has_contributing": false,
"has_issue_template": false,
"has_code_of_conduct": true,
"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": "license file present, not a recognized license",
"points": 16.9,
"status": "partial",
"details": [
{
"code": "license_custom",
"params": {}
}
],
"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": 13.5,
"status": "met",
"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": "moderate",
"name": "Sustainability & Governance",
"value": 61,
"weight": 0.24,
"metrics": [
{
"key": "maintainer_resilience",
"band": "critical",
"name": "Maintainer resilience (bus factor)",
"note": null,
"notes": [],
"value": 27,
"inputs": {
"bus_factor": 1,
"contributors_sampled": 7,
"top_contributor_share": 0.748
},
"components": [
{
"key": "bus_factor",
"name": "Bus factor",
"detail": "1 contributor(s) cover half of all commits",
"points": 9,
"status": "partial",
"details": [
{
"code": "bus_factor",
"params": {
"count": 1
}
}
],
"max_points": 54
},
{
"key": "commit_distribution",
"name": "Commit distribution",
"detail": "top contributor authored 75% of commits",
"points": 5.7,
"status": "partial",
"details": [
{
"code": "top_contributor_share",
"params": {
"share": 75
}
}
],
"max_points": 22.5
},
{
"key": "contributor_breadth",
"name": "Contributor breadth",
"detail": "7 contributors",
"points": 9.5,
"status": "partial",
"details": [
{
"code": "contributors_sampled",
"params": {
"count": 7
}
}
],
"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": 71,
"inputs": {
"merged_prs": 699,
"open_issues": 63,
"closed_issues": 381,
"issue_closed_ratio": 0.858,
"closed_unmerged_prs": 168
},
"components": [
{
"key": "issue_resolution",
"name": "Issue resolution",
"detail": "86% of issues closed",
"points": 40.1,
"status": "partial",
"details": [
{
"code": "issues_closed_share",
"params": {
"share": 86
}
}
],
"max_points": 46.75
},
{
"key": "pr_acceptance",
"name": "PR acceptance",
"detail": "699/867 decided PRs merged",
"points": 30.8,
"status": "partial",
"details": [
{
"code": "decided_prs_merged",
"params": {
"merged": 699,
"decided": 867
}
}
],
"max_points": 38.25
},
{
"key": "openssf_scorecard_code_review",
"name": "OpenSSF Scorecard: Code-Review",
"detail": "Found 0/9 approved changesets -- score normalized to 0",
"points": 0,
"status": "missed",
"details": [],
"max_points": 15
}
]
},
{
"key": "stewardship",
"band": "moderate",
"name": "Ownership & stewardship",
"note": null,
"notes": [],
"value": 61,
"inputs": {
"followers": 14,
"owner_type": "Organization",
"is_verified": null,
"owner_login": "FgForrest",
"public_repos": 26,
"account_age_days": 5545
},
"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": "14 followers of FgForrest",
"points": 8.5,
"status": "partial",
"details": [
{
"code": "owner_followers",
"params": {
"count": 14,
"login": "FgForrest"
}
}
],
"max_points": 25
},
{
"key": "track_record",
"name": "Track record",
"detail": "26 public repos, account ~15 yr old",
"points": 22.4,
"status": "partial",
"details": [
{
"code": "public_repos",
"params": {
"count": 26
}
},
{
"code": "account_age_years",
"params": {
"years": 15
}
}
],
"max_points": 25
}
]
},
{
"key": "package_maintenance",
"band": "excellent",
"name": "Package maintenance",
"note": null,
"notes": [],
"value": 100,
"inputs": {
"packages": [
"io.evitadb:jacoco",
"io.evitadb:evita_api",
"io.evitadb:evita_query",
"io.evitadb:evita_common",
"io.evitadb:evita_engine",
"io.evitadb:evita_server"
],
"ecosystems": "maven",
"any_deprecated": false,
"min_days_since_publish": 0
},
"components": [
{
"key": "published_resolvable",
"name": "Published & resolvable",
"detail": "6 package(s) on maven",
"points": 25,
"status": "met",
"details": [
{
"code": "packages_published",
"params": {
"count": 6,
"ecosystems": "maven"
}
}
],
"max_points": 25
},
{
"key": "publish_recency",
"name": "Publish recency",
"detail": "latest publish 0 days ago",
"points": 35,
"status": "met",
"details": [
{
"code": "publish_recency",
"params": {
"days": 0
}
}
],
"max_points": 35
},
{
"key": "version_history",
"name": "Version history",
"detail": "188 published versions",
"points": 20,
"status": "met",
"details": [
{
"code": "published_versions",
"params": {
"count": 188
}
}
],
"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": 81,
"weight": 0.2,
"metrics": [
{
"key": "engineering_practices",
"band": "moderate",
"name": "Engineering practices",
"note": null,
"notes": [],
"value": 68,
"inputs": {
"has_ci": true,
"has_tests": true,
"has_editorconfig": false,
"has_linter_config": false,
"has_precommit_config": false
},
"components": [
{
"key": "ci_workflows",
"name": "CI workflows",
"detail": "14 workflow(s)",
"points": 24,
"status": "met",
"details": [
{
"code": "ci_workflows",
"params": {
"count": 14
}
}
],
"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": null,
"points": 0,
"status": "missed",
"details": [],
"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": "4 out of 4 merged PRs checked by a CI test -- score normalized to 10",
"points": 20,
"status": "met",
"details": [],
"max_points": 20
}
]
},
{
"key": "documentation",
"band": "excellent",
"name": "Documentation",
"note": null,
"notes": [],
"value": 100,
"inputs": {
"topics": [
"catalog",
"database",
"e-commerce",
"faceted-search",
"graphql-api",
"grpc-api",
"hierarchy-structure",
"histogram",
"in-memory-database",
"nosql-database",
"oltp",
"price-search",
"rest-api"
],
"has_wiki": true,
"homepage": "https://evitadb.io",
"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": "https://evitadb.io",
"points": 15,
"status": "met",
"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": "13 topics",
"points": 10,
"status": "met",
"details": [
{
"code": "topics_count",
"params": {
"count": 13
}
}
],
"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": "at_risk",
"name": "Security",
"value": 48,
"weight": 0.16,
"metrics": [
{
"key": "security_posture",
"band": "at_risk",
"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": 47,
"inputs": {
"source": "openssf_scorecard",
"checks_evaluated": 17,
"scorecard_version": "v5.5.0",
"checks_inconclusive": 1,
"scorecard_aggregate": 4.7
},
"components": [
{
"key": "binary_artifacts",
"name": "Binary-Artifacts",
"detail": "binaries present in source code",
"points": 6.8,
"status": "partial",
"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": "4 out of 4 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": "Found 0/9 approved changesets -- score normalized to 0",
"points": 0,
"status": "missed",
"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": "dangerous workflow patterns detected",
"points": 0,
"status": "missed",
"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.2,
"status": "partial",
"details": [],
"max_points": 2.5
},
{
"key": "maintained",
"name": "Maintained",
"detail": "30 commit(s) and 21 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 8",
"points": 4,
"status": "partial",
"details": [],
"max_points": 5
},
{
"key": "sast",
"name": "SAST",
"detail": "SAST tool is run on all commits",
"points": 5,
"status": "met",
"details": [],
"max_points": 5
},
{
"key": "security_policy",
"name": "Security-Policy",
"detail": "security policy file detected",
"points": 5,
"status": "met",
"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": "71 existing vulnerabilities detected",
"points": 0,
"status": "missed",
"details": [],
"max_points": 7.5
}
]
},
{
"key": "dependency_advisories",
"band": "moderate",
"name": "Dependency advisories",
"note": "Excluded from scoring (no data or not applicable): Indirect dependencies free of known advisories. Remaining weights renormalized. Matched 275 resolved dependencies against OSV; 9 could not be assessed (no resolved version, an unsupported ecosystem, or beyond the reported package list). 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"
]
}
},
{
"code": "weights_renormalized",
"params": {}
},
{
"code": "advisories_scope_repository",
"params": {
"assessed": 275
}
},
{
"code": "advisories_unassessed",
"params": {
"count": 9
}
},
{
"code": "advisories_repo_graph_caveat",
"params": {}
},
{
"code": "advisories_reachability",
"params": {}
}
],
"value": 52,
"inputs": {
"source": "osv",
"advisories": 47,
"affected_packages": 11,
"assessed_packages": 275,
"unassessed_packages": 9,
"affected_by_severity": "critical 1, high 7, moderate 2, low 1",
"direct_affected_packages": 3
},
"components": [
{
"key": "direct_dependencies_free_of_known_advisories",
"name": "Direct dependencies free of known advisories",
"detail": "3 affected: com.fasterxml.jackson.core:jackson-core 2.11.3 (high 7.5), com.fasterxml.jackson.core:jackson-databind 2.12.7.1 (high 8.1), org.apache.commons:commons-lang3 3.11 (moderate 6.5)",
"points": 9.1,
"status": "partial",
"details": [
{
"code": "advisories_affected",
"params": {
"count": 3,
"packages": "com.fasterxml.jackson.core:jackson-core 2.11.3 (high 7.5), com.fasterxml.jackson.core:jackson-databind 2.12.7.1 (high 8.1), org.apache.commons:commons-lang3 3.11 (moderate 6.5)"
}
}
],
"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": "2 advisory-carrying package(s) unaddressed past 90 days; oldest published 412 days ago",
"points": 29.6,
"status": "partial",
"details": [
{
"code": "advisories_stale",
"params": {
"days": 90,
"count": 2,
"oldest": 412
}
}
],
"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": 275,
"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": 3
},
"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": "good",
"name": "AI Readiness",
"value": 80,
"weight": 0,
"metrics": [
{
"key": "ai_agent_context",
"band": "excellent",
"name": "Agent context & guidance",
"note": null,
"notes": [],
"value": 85,
"inputs": {
"has_llms_txt": false,
"legible_history_share": 0.98,
"agent_instruction_files": [
"CLAUDE.md"
],
"agent_instruction_max_bytes": 1787
},
"components": [
{
"key": "agent_instructions",
"name": "Agent instructions",
"detail": "CLAUDE.md",
"points": 45,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "CLAUDE.md"
}
}
],
"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": "98 of 100 human commits state their intent (structured subject or explanatory body)",
"points": 40,
"status": "met",
"details": [
{
"code": "legible_history",
"params": {
"legible": 98,
"sampled": 100
}
}
],
"max_points": 40
}
]
},
{
"key": "ai_verify_loop",
"band": "moderate",
"name": "Verify loop (build / test / typecheck)",
"note": null,
"notes": [],
"value": 69,
"inputs": {
"has_nix": false,
"has_tests": true,
"lockfiles": [],
"has_dockerfile": true,
"typed_language": true,
"bootstrap_files": [],
"has_devcontainer": false,
"has_linter_config": false,
"typecheck_configs": [],
"agent_commit_share": 0,
"toolchain_manifests": [
"documentation/research/en/nosql/spike_tests/pom.xml",
"documentation/research/en/sql/assets/query_testing/queries_measurement/pom.xml",
"evita_api/pom.xml",
"evita_common/pom.xml",
"evita_db/pom.xml",
"evita_engine/pom.xml",
"evita_export/evita_export_fs/pom.xml",
"evita_export/evita_export_s3/pom.xml",
"evita_external_api/evita_external_api_core/pom.xml",
"evita_external_api/evita_external_api_graphql/pom.xml",
"evita_external_api/evita_external_api_grpc/client/pom.xml",
"evita_external_api/evita_external_api_grpc/client_all_in_one/pom.xml",
"evita_external_api/evita_external_api_grpc/client_observability/pom.xml",
"evita_external_api/evita_external_api_grpc/server/pom.xml",
"evita_external_api/evita_external_api_grpc/shared/pom.xml",
"evita_external_api/evita_external_api_lab/pom.xml",
"evita_external_api/evita_external_api_observability/pom.xml",
"evita_external_api/evita_external_api_rest/pom.xml",
"evita_external_api/evita_external_api_system/pom.xml",
"evita_external_api/pom.xml",
"evita_query/pom.xml",
"evita_roaring_bitmap/pom.xml",
"evita_server/pom.xml",
"evita_store/evita_store_entity/pom.xml",
"evita_store/evita_store_key_value/pom.xml",
"evita_store/evita_store_server/pom.xml",
"evita_store/evita_traffic_engine/pom.xml",
"evita_store/pom.xml",
"evita_test/evita_documentation_tests/pom.xml",
"evita_test/evita_functional_tests/pom.xml",
"evita_test/evita_long_running_tests/pom.xml",
"evita_test/evita_performance_tests/pom.xml",
"evita_test/evita_test_support/pom.xml",
"jacoco/pom.xml",
"pom.xml"
],
"dependency_bot_commit_share": 0
},
"components": [
{
"key": "one_command_bootstrap",
"name": "One-command bootstrap",
"detail": "documentation/research/en/nosql/spike_tests/pom.xml, documentation/research/en/sql/assets/query_testing/queries_measurement/pom.xml, evita_api/pom.xml (toolchain convention, no task runner)",
"points": 12.6,
"status": "partial",
"details": [
{
"code": "toolchain_convention",
"params": {
"files": "documentation/research/en/nosql/spike_tests/pom.xml, documentation/research/en/sql/assets/query_testing/queries_measurement/pom.xml, evita_api/pom.xml"
}
}
],
"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": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 11
},
{
"key": "static_type_checking",
"name": "Static type checking",
"detail": "Java (statically typed)",
"points": 11,
"status": "met",
"details": [
{
"code": "statically_typed_language",
"params": {
"language": "Java"
}
}
],
"max_points": 11
},
{
"key": "reproducible_environment",
"name": "Reproducible environment",
"detail": "Dockerfile",
"points": 10,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "Dockerfile"
}
}
],
"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": "dependency automation configured, none observed in the sampled commits",
"points": 5,
"status": "partial",
"details": [
{
"code": "dependency_bot_config_only",
"params": {}
}
],
"max_points": 8
},
{
"key": "openssf_scorecard_pinned_dependencies",
"name": "OpenSSF Scorecard: Pinned-Dependencies",
"detail": "dependency not pinned by hash detected -- score normalized to 8",
"points": 8,
"status": "partial",
"details": [],
"max_points": 10
}
]
},
{
"key": "ai_code_legibility",
"band": "excellent",
"name": "Code legibility for models",
"note": null,
"notes": [],
"value": 99,
"inputs": {
"primary_language": "Java",
"largest_source_bytes": 704058,
"source_files_sampled": 6339,
"oversized_source_files": 123
},
"components": [
{
"key": "type_checkable_code",
"name": "Type-checkable code",
"detail": "Java (statically typed)",
"points": 45,
"status": "met",
"details": [
{
"code": "statically_typed_language",
"params": {
"language": "Java"
}
}
],
"max_points": 45
},
{
"key": "manageable_file_sizes",
"name": "Manageable file sizes",
"detail": "123/6339 source files over 60KB",
"points": 53.9,
"status": "partial",
"details": [
{
"code": "oversized_source_files",
"params": {
"kb": 60,
"sampled": 6339,
"oversized": 123
}
}
],
"max_points": 55
}
]
},
{
"key": "ai_interfaces",
"band": "good",
"name": "Machine-readable interfaces",
"note": null,
"notes": [],
"value": 80,
"inputs": {
"example_dirs": [
"example",
"examples"
],
"has_mcp_signal": false,
"api_schema_files": [
"documentation/blog/en/examples/17-one-to-many/article-spacing.graphql",
"documentation/blog/en/examples/17-one-to-many/product-categories-tags.graphql",
"documentation/blog/en/examples/17-one-to-many/product-categories.graphql",
"documentation/blog/en/examples/17-one-to-many/product-groups.graphql",
"documentation/blog/en/examples/17-one-to-many/product-parameters-top10.graphql",
"documentation/blog/en/examples/17-one-to-many/product-stock-existence.graphql",
"documentation/blog/en/examples/25-faceted-filter-choreography/01-full-panel.graphql",
"documentation/blog/en/examples/string_contains/string_contains.graphql",
"documentation/publishing/root.cz/04-web-APIs/getProduct.graphql",
"documentation/user/en/get-started/example/create-first-entity.graphql",
"documentation/user/en/get-started/example/create-small-dataset.graphql",
"documentation/user/en/get-started/example/define-catalog.graphql",
"documentation/user/en/get-started/example/define-schema-for-catalog.graphql",
"documentation/user/en/get-started/example/delete-entity-by-query.graphql",
"documentation/user/en/get-started/example/filter-order-entities.graphql",
"documentation/user/en/get-started/example/filter-order-products-by-price.graphql",
"documentation/user/en/get-started/example/list-entities.graphql",
"documentation/user/en/get-started/example/query-demo-server.graphql",
"documentation/user/en/get-started/example/read-entity-by-pk.graphql",
"documentation/user/en/get-started/example/update-entity.graphql",
"documentation/user/en/query/examples/complexGrammar.graphql",
"documentation/user/en/query/examples/grammar.graphql",
"documentation/user/en/query/examples/randomOrderQuery.graphql",
"documentation/user/en/query/examples/simplestQuery.graphql",
"documentation/user/en/query/filtering/examples/behavioral/archived-entities-filtering.graphql",
"documentation/user/en/query/filtering/examples/behavioral/archived-entities-listing.graphql",
"documentation/user/en/query/filtering/examples/behavioral/user-filter.graphql",
"documentation/user/en/query/filtering/examples/comparable/attribute-between.graphql",
"documentation/user/en/query/filtering/examples/comparable/attribute-equals.graphql",
"documentation/user/en/query/filtering/examples/comparable/attribute-greater-than-equals.graphql",
"documentation/user/en/query/filtering/examples/comparable/attribute-greater-than.graphql",
"documentation/user/en/query/filtering/examples/comparable/attribute-in-set.graphql",
"documentation/user/en/query/filtering/examples/comparable/attribute-is-not-null.graphql",
"documentation/user/en/query/filtering/examples/comparable/attribute-is-null.graphql",
"documentation/user/en/query/filtering/examples/comparable/attribute-less-than-equals.graphql",
"documentation/user/en/query/filtering/examples/comparable/attribute-less-than.graphql",
"documentation/user/en/query/filtering/examples/constant/entity-primary-key-in-set.graphql",
"documentation/user/en/query/filtering/examples/hierarchy/hierarchy-within-reference-any-having.graphql",
"documentation/user/en/query/filtering/examples/hierarchy/hierarchy-within-reference-direct-categories-smart.graphql",
"documentation/user/en/query/filtering/examples/hierarchy/hierarchy-within-reference-direct-categories.graphql",
"documentation/user/en/query/filtering/examples/hierarchy/hierarchy-within-reference-except.graphql",
"documentation/user/en/query/filtering/examples/hierarchy/hierarchy-within-reference-excluding-root.graphql",
"documentation/user/en/query/filtering/examples/hierarchy/hierarchy-within-reference-having-december.graphql",
"documentation/user/en/query/filtering/examples/hierarchy/hierarchy-within-reference-having.graphql",
"documentation/user/en/query/filtering/examples/hierarchy/hierarchy-within-reference-simple.graphql",
"documentation/user/en/query/filtering/examples/hierarchy/hierarchy-within-root-reference-simple.graphql",
"documentation/user/en/query/filtering/examples/hierarchy/hierarchy-within-root-simple.graphql",
"documentation/user/en/query/filtering/examples/hierarchy/hierarchy-within-self-any-having.graphql",
"documentation/user/en/query/filtering/examples/hierarchy/hierarchy-within-self-direct-categories.graphql",
"documentation/user/en/query/filtering/examples/hierarchy/hierarchy-within-self-excluding-root.graphql",
"documentation/user/en/query/filtering/examples/hierarchy/hierarchy-within-self-excluding.graphql",
"documentation/user/en/query/filtering/examples/hierarchy/hierarchy-within-self-having.graphql",
"documentation/user/en/query/filtering/examples/hierarchy/hierarchy-within-self-multi.graphql",
"documentation/user/en/query/filtering/examples/hierarchy/hierarchy-within-self-simple.graphql",
"documentation/user/en/query/filtering/examples/hierarchy/hierarchy-within-self-top-categories.graphql",
"documentation/user/en/query/filtering/examples/locale/locale.graphql",
"documentation/user/en/query/filtering/examples/locale/locale_missing.graphql",
"documentation/user/en/query/filtering/examples/logical/and.graphql",
"documentation/user/en/query/filtering/examples/logical/implicit-binding.graphql",
"documentation/user/en/query/filtering/examples/logical/not-narrowed.graphql",
"documentation/user/en/query/filtering/examples/logical/not.graphql",
"documentation/user/en/query/filtering/examples/logical/or.graphql",
"documentation/user/en/query/filtering/examples/price/price-between.graphql",
"documentation/user/en/query/filtering/examples/price/price-in-currency.graphql",
"documentation/user/en/query/filtering/examples/price/price-in-price-lists.graphql",
"documentation/user/en/query/filtering/examples/price/price-valid-in-correct.graphql",
"documentation/user/en/query/filtering/examples/price/price-valid-in.graphql",
"documentation/user/en/query/filtering/examples/price/price.graphql",
"documentation/user/en/query/filtering/examples/range/attribute-in-range.graphql",
"documentation/user/en/query/filtering/examples/references/entity-having.graphql",
"documentation/user/en/query/filtering/examples/references/facet-having.graphql",
"documentation/user/en/query/filtering/examples/references/facet-including-children-except.graphql",
"documentation/user/en/query/filtering/examples/references/facet-including-children-having.graphql",
"documentation/user/en/query/filtering/examples/references/facet-including-children.graphql",
"documentation/user/en/query/filtering/examples/references/group-having.graphql",
"documentation/user/en/query/filtering/examples/references/histogram-having.graphql",
"documentation/user/en/query/filtering/examples/references/reference-having-any.graphql",
"documentation/user/en/query/filtering/examples/references/reference-having-exact-id.graphql",
"documentation/user/en/query/filtering/examples/references/reference-having.graphql",
"documentation/user/en/query/filtering/examples/string/attribute-contains.graphql",
"documentation/user/en/query/filtering/examples/string/attribute-ends-with.graphql",
"documentation/user/en/query/filtering/examples/string/attribute-starts-with.graphql",
"documentation/user/en/query/header/examples/labels.graphql",
"documentation/user/en/query/ordering/examples/behavioral/archived-entities-ordering.graphql",
"documentation/user/en/query/ordering/examples/comparable/attribute-natural-localized.graphql",
"documentation/user/en/query/ordering/examples/comparable/attribute-natural-multiple.graphql",
"documentation/user/en/query/ordering/examples/comparable/attribute-natural-non-localized.graphql",
"documentation/user/en/query/ordering/examples/comparable/primary-key-natural.graphql",
"documentation/user/en/query/ordering/examples/constant/attribute-set-exact.graphql",
"documentation/user/en/query/ordering/examples/constant/attribute-set-in-filter.graphql",
"documentation/user/en/query/ordering/examples/constant/entity-primary-key-exact.graphql",
"documentation/user/en/query/ordering/examples/constant/entity-primary-key-in-filter.graphql",
"documentation/user/en/query/ordering/examples/price/price-discount.graphql",
"documentation/user/en/query/ordering/examples/price/price-natural.graphql",
"documentation/user/en/query/ordering/examples/random/pseudo-random.graphql",
"documentation/user/en/query/ordering/examples/random/random.graphql",
"documentation/user/en/query/ordering/examples/reference/entity-group-property.graphql",
"documentation/user/en/query/ordering/examples/reference/entity-property.graphql",
"documentation/user/en/query/ordering/examples/reference/reference-attribute-natural-hierarchy.graphql",
"documentation/user/en/query/ordering/examples/reference/reference-attribute-natural-multiple-explicit.graphql",
"documentation/user/en/query/ordering/examples/reference/reference-attribute-natural-multiple.graphql",
"documentation/user/en/query/ordering/examples/reference/reference-attribute-natural.graphql",
"documentation/user/en/query/ordering/examples/reference/reference-traverse-by.graphql",
"documentation/user/en/query/ordering/examples/segment/segments.graphql",
"documentation/user/en/query/requirements/examples/behavioral/archived-entities-requirements.graphql",
"documentation/user/en/query/requirements/examples/facet/change-default-calculation-rules.graphql",
"documentation/user/en/query/requirements/examples/facet/facet-groups-conjunction.graphql",
"documentation/user/en/query/requirements/examples/facet/facet-groups-disjunction.graphql",
"documentation/user/en/query/requirements/examples/facet/facet-groups-exclusivity.graphql",
"documentation/user/en/query/requirements/examples/facet/facet-groups-negation.graphql",
"documentation/user/en/query/requirements/examples/facet/reference-summary-bodies.graphql",
"documentation/user/en/query/requirements/examples/facet/reference-summary-filtering.graphql",
"documentation/user/en/query/requirements/examples/facet/reference-summary-histograms.graphql",
"documentation/user/en/query/requirements/examples/facet/reference-summary-localized-bodies.graphql",
"documentation/user/en/query/requirements/examples/facet/reference-summary-of-reference.graphql",
"documentation/user/en/query/requirements/examples/facet/reference-summary-ordering.graphql",
"documentation/user/en/query/requirements/examples/facet/reference-summary.graphql",
"documentation/user/en/query/requirements/examples/fetching/accompanying-price-content.graphql",
"documentation/user/en/query/requirements/examples/fetching/allPricesForSaleField.graphql",
"documentation/user/en/query/requirements/examples/fetching/allPricesForSaleFieldWithReferencePrices.graphql",
"documentation/user/en/query/requirements/examples/fetching/associatedDataContent.graphql",
"documentation/user/en/query/requirements/examples/fetching/associatedDataContentAll.graphql",
"documentation/user/en/query/requirements/examples/fetching/attributeContent.graphql",
"documentation/user/en/query/requirements/examples/fetching/attributeContentAll.graphql",
"documentation/user/en/query/requirements/examples/fetching/basicEntityContent.graphql",
"documentation/user/en/query/requirements/examples/fetching/dataInLocales.graphql",
"documentation/user/en/query/requirements/examples/fetching/dataInLocalesAll.graphql",
"documentation/user/en/query/requirements/examples/fetching/dataInLocalesWithFilter.graphql",
"documentation/user/en/query/requirements/examples/fetching/entityContent.graphql",
"documentation/user/en/query/requirements/examples/fetching/hierarchyContent.graphql",
"documentation/user/en/query/requirements/examples/fetching/hierarchyContentViaReference.graphql",
"documentation/user/en/query/requirements/examples/fetching/localizedAssociatedData.graphql",
"documentation/user/en/query/requirements/examples/fetching/localizedAssociatedDataWithFilter.graphql",
"documentation/user/en/query/requirements/examples/fetching/localizedAttributes.graphql",
"documentation/user/en/query/requirements/examples/fetching/localizedAttributesWithFilter.graphql",
"documentation/user/en/query/requirements/examples/fetching/namedReferenceContent.graphql",
"documentation/user/en/query/requirements/examples/fetching/priceContent.graphql",
"documentation/user/en/query/requirements/examples/fetching/priceContentAll.graphql",
"documentation/user/en/query/requirements/examples/fetching/priceContentRespectingFilter.graphql",
"documentation/user/en/query/requirements/examples/fetching/priceForSaleField.graphql",
"documentation/user/en/query/requirements/examples/fetching/priceForSaleFieldWithArguments.graphql",
"documentation/user/en/query/requirements/examples/fetching/priceForSaleRangeField.graphql",
"documentation/user/en/query/requirements/examples/fetching/pricesField.graphql",
"documentation/user/en/query/requirements/examples/fetching/pricesFieldFiltered.graphql",
"documentation/user/en/query/requirements/examples/fetching/referenceContent.graphql",
"documentation/user/en/query/requirements/examples/fetching/referenceContentAll.graphql",
"documentation/user/en/query/requirements/examples/fetching/referenceContentBodies.graphql",
"documentation/user/en/query/requirements/examples/fetching/referenceContentFilter.graphql",
"documentation/user/en/query/requirements/examples/fetching/referenceContentNested.graphql",
"documentation/user/en/query/requirements/examples/fetching/referenceContentOrder.graphql",
"documentation/user/en/query/requirements/examples/fetching/referenceContentPage.graphql",
"documentation/user/en/query/requirements/examples/fetching/referenceContentPageEmpty.graphql",
"documentation/user/en/query/requirements/examples/fetching/referenceContentWithAttributes.graphql",
"documentation/user/en/query/requirements/examples/hierarchy/hierarchy-children.graphql",
"documentation/user/en/query/requirements/examples/hierarchy/hierarchy-data-structure-association.graphql",
"documentation/user/en/query/requirements/examples/hierarchy/hierarchy-direct-children.graphql",
"documentation/user/en/query/requirements/examples/hierarchy/hierarchy-from-node.graphql",
"documentation/user/en/query/requirements/examples/hierarchy/hierarchy-from-root.graphql",
"documentation/user/en/query/requirements/examples/hierarchy/hierarchy-level-parent.graphql",
"documentation/user/en/query/requirements/examples/hierarchy/hierarchy-level.graphql",
"documentation/user/en/query/requirements/examples/hierarchy/hierarchy-node.graphql",
"documentation/user/en/query/requirements/examples/hierarchy/hierarchy-parent.graphql",
"documentation/user/en/query/requirements/examples/hierarchy/hierarchy-parents-siblings.graphql",
"documentation/user/en/query/requirements/examples/hierarchy/hierarchy-parents.graphql",
"documentation/user/en/query/requirements/examples/hierarchy/hierarchy-siblings-with-subtree.graphql",
"documentation/user/en/query/requirements/examples/hierarchy/hierarchy-siblings.graphql",
"documentation/user/en/query/requirements/examples/histogram/attribute-histogram-equalized.graphql",
"documentation/user/en/query/requirements/examples/histogram/attribute-histogram-optimized.graphql",
"documentation/user/en/query/requirements/examples/histogram/attribute-histogram.graphql",
"documentation/user/en/query/requirements/examples/histogram/price-histogram-equalized.graphql",
"documentation/user/en/query/requirements/examples/histogram/price-histogram-optimized.graphql",
"documentation/user/en/query/requirements/examples/histogram/price-histogram.graphql",
"documentation/user/en/query/requirements/examples/paging/listEntities.graphql",
"documentation/user/en/query/requirements/examples/paging/page.graphql",
"documentation/user/en/query/requirements/examples/paging/spacing_page1.graphql",
"documentation/user/en/query/requirements/examples/paging/spacing_page2.graphql",
"documentation/user/en/query/requirements/examples/paging/spacing_page4.graphql",
"documentation/user/en/query/requirements/examples/paging/strip.graphql",
"documentation/user/en/query/requirements/examples/price/price-type-without-tax.graphql",
"documentation/user/en/query/requirements/examples/price/price-type.graphql",
"documentation/user/en/query/requirements/examples/telemetry/queryTelemetry.graphql",
"documentation/user/en/solve/examples/filtering-products-in-category/breadcrumb-category.graphql",
"documentation/user/en/solve/examples/filtering-products-in-category/breadcrumb-product.graphql",
"documentation/user/en/solve/examples/filtering-products-in-category/category-description.graphql",
"documentation/user/en/solve/examples/filtering-products-in-category/category-details-with-breadcrumb.graphql",
"documentation/user/en/solve/examples/filtering-products-in-category/faceted-search-brand.graphql",
"documentation/user/en/solve/examples/filtering-products-in-category/faceted-search.graphql",
"documentation/user/en/solve/examples/filtering-products-in-category/price-filter.graphql",
"documentation/user/en/solve/examples/filtering-products-in-category/product-listing-with-facets-and-sorting.graphql",
"documentation/user/en/solve/examples/filtering-products-in-category/product-listing.graphql",
"documentation/user/en/solve/examples/filtering-products-in-category/top-selling-products.graphql",
"documentation/user/en/solve/examples/render-category-menu/dynamic-collapsible-menu-sub-category.graphql",
"documentation/user/en/solve/examples/render-category-menu/dynamic-collapsible-menu.graphql",
"documentation/user/en/solve/examples/render-category-menu/excluding-expired-categories-at-correct-time.graphql",
"documentation/user/en/solve/examples/render-category-menu/excluding-expired-categories.graphql",
"documentation/user/en/solve/examples/render-category-menu/excluding-private-categories.graphql",
"documentation/user/en/solve/examples/render-category-menu/hybrid-menu.graphql",
"documentation/user/en/solve/examples/render-category-menu/mega-menu-with-product-statistics.graphql",
"documentation/user/en/solve/examples/render-category-menu/mega-menu.graphql",
"documentation/user/en/solve/examples/render-category-menu/sub-categories-listing.graphql",
"documentation/user/en/solve/examples/routing/get-by-globally-unique-attribute.graphql",
"documentation/user/en/solve/examples/routing/get-by-globally-unique-locale-specific-attribute.graphql",
"documentation/user/en/solve/examples/routing/get-by-unique-attribute.graphql",
"documentation/user/en/solve/examples/routing/get-category-with-data.graphql",
"documentation/user/en/solve/examples/routing/get-product-with-data.graphql",
"documentation/user/en/use/api/example/capture-attribute-mutation-data-api.graphql",
"documentation/user/en/use/api/example/capture-attribute-mutation-graphql.graphql",
"documentation/user/en/use/api/example/capture-attribute-mutation-schema-api.graphql",
"documentation/user/en/use/api/example/capture-entity-mutations-with-transaction-graphql.graphql",
"documentation/user/en/use/api/example/catalog-change-capture-data-api.graphql",
"documentation/user/en/use/api/example/catalog-change-capture-graphql.graphql",
"documentation/user/en/use/api/example/catalog-change-capture-schema-api.graphql",
"documentation/user/en/use/api/example/create-new-entity.graphql",
"documentation/user/en/use/api/example/delete-entities-by-query.graphql",
"documentation/user/en/use/api/example/engine-change-capture-graphql.graphql",
"documentation/user/en/use/api/example/evita-query-example.graphql",
"documentation/user/en/use/api/example/fetching-example.graphql",
"documentation/user/en/use/api/example/finalization-of-warmup-mode.graphql",
"documentation/user/en/use/api/example/graphql-full-query-example.graphql",
"documentation/user/en/use/api/example/graphql-get-entity-query-example.graphql",
"documentation/user/en/use/api/example/graphql-get-entity-with-target-entity-query-example.graphql",
"documentation/user/en/use/api/example/graphql-get-query-example.graphql",
"documentation/user/en/use/api/example/graphql-list-entity-query-example.graphql",
"documentation/user/en/use/api/example/graphql-list-entity-with-target-entity-query-example.graphql",
"documentation/user/en/use/api/example/graphql-list-query-example.graphql",
"documentation/user/en/use/api/example/imperative-catalog-schema-definition.graphql",
"documentation/user/en/use/api/example/imperative-collection-schema-definition.graphql",
"documentation/user/en/use/api/example/update-existing-entity.graphql",
"evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcAssociatedData.proto",
"evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcAssociatedDataMutations.proto",
"evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcAssociatedDataSchemaMutations.proto",
"evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcAttribute.proto",
"evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcAttributeMutations.proto",
"evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcAttributeSchemaMutations.proto",
"evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcCatalogSchema.proto",
"evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcCatalogSchemaMutation.proto",
"evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcCatalogSchemaMutations.proto",
"evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcChangeCapture.proto",
"evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcEngineMutation.proto",
"evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcEntity.proto",
"evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcEntityMutation.proto",
"evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcEntityMutations.proto",
"evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcEntitySchema.proto",
"evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcEntitySchemaMutation.proto",
"evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcEntitySchemaMutations.proto",
"evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcEnums.proto",
"evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcEvitaAPI.proto",
"evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcEvitaDataTypes.proto",
"evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcEvitaManagementAPI.proto",
"evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcEvitaSessionAPI.proto",
"evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcEvitaTrafficRecordingAPI.proto",
"evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcExtraResults.proto",
"evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcInfrastrutureMutation.proto",
"evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcLocalMutation.proto",
"evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcPrice.proto",
"evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcPriceMutations.proto",
"evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcQueryParam.proto",
"evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcReferenceMutations.proto",
"evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcReferenceSchemaMutations.proto",
"evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcSortableAttributeCompoundSchemaMutations.proto",
"evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcTrafficRecording.proto",
"evita_test/evita_functional_tests/src/test/resources/testData/CatalogGraphQLQueryTranslationVerifyingFunctionTest_query.graphql"
]
},
"components": [
{
"key": "api_schema_openapi_graphql_proto",
"name": "API schema (OpenAPI/GraphQL/proto)",
"detail": "documentation/blog/en/examples/17-one-to-many/article-spacing.graphql, documentation/blog/en/examples/17-one-to-many/product-categories-tags.graphql, documentation/blog/en/examples/17-one-to-many/product-categories.graphql, documentation/blog/en/examples/17-one-to-many/product-groups.graphql, documentation/blog/en/examples/17-one-to-many/product-parameters-top10.graphql, documentation/blog/en/examples/17-one-to-many/product-stock-existence.graphql, documentation/blog/en/examples/25-faceted-filter-choreography/01-full-panel.graphql, documentation/blog/en/examples/string_contains/string_contains.graphql, documentation/publishing/root.cz/04-web-APIs/getProduct.graphql, documentation/user/en/get-started/example/create-first-entity.graphql, documentation/user/en/get-started/example/create-small-dataset.graphql, documentation/user/en/get-started/example/define-catalog.graphql, documentation/user/en/get-started/example/define-schema-for-catalog.graphql, documentation/user/en/get-started/example/delete-entity-by-query.graphql, documentation/user/en/get-started/example/filter-order-entities.graphql, documentation/user/en/get-started/example/filter-order-products-by-price.graphql, documentation/user/en/get-started/example/list-entities.graphql, documentation/user/en/get-started/example/query-demo-server.graphql, documentation/user/en/get-started/example/read-entity-by-pk.graphql, documentation/user/en/get-started/example/update-entity.graphql, documentation/user/en/query/examples/complexGrammar.graphql, documentation/user/en/query/examples/grammar.graphql, documentation/user/en/query/examples/randomOrderQuery.graphql, documentation/user/en/query/examples/simplestQuery.graphql, documentation/user/en/query/filtering/examples/behavioral/archived-entities-filtering.graphql, documentation/user/en/query/filtering/examples/behavioral/archived-entities-listing.graphql, documentation/user/en/query/filtering/examples/behavioral/user-filter.graphql, documentation/user/en/query/filtering/examples/comparable/attribute-between.graphql, documentation/user/en/query/filtering/examples/comparable/attribute-equals.graphql, documentation/user/en/query/filtering/examples/comparable/attribute-greater-than-equals.graphql, documentation/user/en/query/filtering/examples/comparable/attribute-greater-than.graphql, documentation/user/en/query/filtering/examples/comparable/attribute-in-set.graphql, documentation/user/en/query/filtering/examples/comparable/attribute-is-not-null.graphql, documentation/user/en/query/filtering/examples/comparable/attribute-is-null.graphql, documentation/user/en/query/filtering/examples/comparable/attribute-less-than-equals.graphql, documentation/user/en/query/filtering/examples/comparable/attribute-less-than.graphql, documentation/user/en/query/filtering/examples/constant/entity-primary-key-in-set.graphql, documentation/user/en/query/filtering/examples/hierarchy/hierarchy-within-reference-any-having.graphql, documentation/user/en/query/filtering/examples/hierarchy/hierarchy-within-reference-direct-categories-smart.graphql, documentation/user/en/query/filtering/examples/hierarchy/hierarchy-within-reference-direct-categories.graphql, documentation/user/en/query/filtering/examples/hierarchy/hierarchy-within-reference-except.graphql, documentation/user/en/query/filtering/examples/hierarchy/hierarchy-within-reference-excluding-root.graphql, documentation/user/en/query/filtering/examples/hierarchy/hierarchy-within-reference-having-december.graphql, documentation/user/en/query/filtering/examples/hierarchy/hierarchy-within-reference-having.graphql, documentation/user/en/query/filtering/examples/hierarchy/hierarchy-within-reference-simple.graphql, documentation/user/en/query/filtering/examples/hierarchy/hierarchy-within-root-reference-simple.graphql, documentation/user/en/query/filtering/examples/hierarchy/hierarchy-within-root-simple.graphql, documentation/user/en/query/filtering/examples/hierarchy/hierarchy-within-self-any-having.graphql, documentation/user/en/query/filtering/examples/hierarchy/hierarchy-within-self-direct-categories.graphql, documentation/user/en/query/filtering/examples/hierarchy/hierarchy-within-self-excluding-root.graphql, documentation/user/en/query/filtering/examples/hierarchy/hierarchy-within-self-excluding.graphql, documentation/user/en/query/filtering/examples/hierarchy/hierarchy-within-self-having.graphql, documentation/user/en/query/filtering/examples/hierarchy/hierarchy-within-self-multi.graphql, documentation/user/en/query/filtering/examples/hierarchy/hierarchy-within-self-simple.graphql, documentation/user/en/query/filtering/examples/hierarchy/hierarchy-within-self-top-categories.graphql, documentation/user/en/query/filtering/examples/locale/locale.graphql, documentation/user/en/query/filtering/examples/locale/locale_missing.graphql, documentation/user/en/query/filtering/examples/logical/and.graphql, documentation/user/en/query/filtering/examples/logical/implicit-binding.graphql, documentation/user/en/query/filtering/examples/logical/not-narrowed.graphql, documentation/user/en/query/filtering/examples/logical/not.graphql, documentation/user/en/query/filtering/examples/logical/or.graphql, documentation/user/en/query/filtering/examples/price/price-between.graphql, documentation/user/en/query/filtering/examples/price/price-in-currency.graphql, documentation/user/en/query/filtering/examples/price/price-in-price-lists.graphql, documentation/user/en/query/filtering/examples/price/price-valid-in-correct.graphql, documentation/user/en/query/filtering/examples/price/price-valid-in.graphql, documentation/user/en/query/filtering/examples/price/price.graphql, documentation/user/en/query/filtering/examples/range/attribute-in-range.graphql, documentation/user/en/query/filtering/examples/references/entity-having.graphql, documentation/user/en/query/filtering/examples/references/facet-having.graphql, documentation/user/en/query/filtering/examples/references/facet-including-children-except.graphql, documentation/user/en/query/filtering/examples/references/facet-including-children-having.graphql, documentation/user/en/query/filtering/examples/references/facet-including-children.graphql, documentation/user/en/query/filtering/examples/references/group-having.graphql, documentation/user/en/query/filtering/examples/references/histogram-having.graphql, documentation/user/en/query/filtering/examples/references/reference-having-any.graphql, documentation/user/en/query/filtering/examples/references/reference-having-exact-id.graphql, documentation/user/en/query/filtering/examples/references/reference-having.graphql, documentation/user/en/query/filtering/examples/string/attribute-contains.graphql, documentation/user/en/query/filtering/examples/string/attribute-ends-with.graphql, documentation/user/en/query/filtering/examples/string/attribute-starts-with.graphql, documentation/user/en/query/header/examples/labels.graphql, documentation/user/en/query/ordering/examples/behavioral/archived-entities-ordering.graphql, documentation/user/en/query/ordering/examples/comparable/attribute-natural-localized.graphql, documentation/user/en/query/ordering/examples/comparable/attribute-natural-multiple.graphql, documentation/user/en/query/ordering/examples/comparable/attribute-natural-non-localized.graphql, documentation/user/en/query/ordering/examples/comparable/primary-key-natural.graphql, documentation/user/en/query/ordering/examples/constant/attribute-set-exact.graphql, documentation/user/en/query/ordering/examples/constant/attribute-set-in-filter.graphql, documentation/user/en/query/ordering/examples/constant/entity-primary-key-exact.graphql, documentation/user/en/query/ordering/examples/constant/entity-primary-key-in-filter.graphql, documentation/user/en/query/ordering/examples/price/price-discount.graphql, documentation/user/en/query/ordering/examples/price/price-natural.graphql, documentation/user/en/query/ordering/examples/random/pseudo-random.graphql, documentation/user/en/query/ordering/examples/random/random.graphql, documentation/user/en/query/ordering/examples/reference/entity-group-property.graphql, documentation/user/en/query/ordering/examples/reference/entity-property.graphql, documentation/user/en/query/ordering/examples/reference/reference-attribute-natural-hierarchy.graphql, documentation/user/en/query/ordering/examples/reference/reference-attribute-natural-multiple-explicit.graphql, documentation/user/en/query/ordering/examples/reference/reference-attribute-natural-multiple.graphql, documentation/user/en/query/ordering/examples/reference/reference-attribute-natural.graphql, documentation/user/en/query/ordering/examples/reference/reference-traverse-by.graphql, documentation/user/en/query/ordering/examples/segment/segments.graphql, documentation/user/en/query/requirements/examples/behavioral/archived-entities-requirements.graphql, documentation/user/en/query/requirements/examples/facet/change-default-calculation-rules.graphql, documentation/user/en/query/requirements/examples/facet/facet-groups-conjunction.graphql, documentation/user/en/query/requirements/examples/facet/facet-groups-disjunction.graphql, documentation/user/en/query/requirements/examples/facet/facet-groups-exclusivity.graphql, documentation/user/en/query/requirements/examples/facet/facet-groups-negation.graphql, documentation/user/en/query/requirements/examples/facet/reference-summary-bodies.graphql, documentation/user/en/query/requirements/examples/facet/reference-summary-filtering.graphql, documentation/user/en/query/requirements/examples/facet/reference-summary-histograms.graphql, documentation/user/en/query/requirements/examples/facet/reference-summary-localized-bodies.graphql, documentation/user/en/query/requirements/examples/facet/reference-summary-of-reference.graphql, documentation/user/en/query/requirements/examples/facet/reference-summary-ordering.graphql, documentation/user/en/query/requirements/examples/facet/reference-summary.graphql, documentation/user/en/query/requirements/examples/fetching/accompanying-price-content.graphql, documentation/user/en/query/requirements/examples/fetching/allPricesForSaleField.graphql, documentation/user/en/query/requirements/examples/fetching/allPricesForSaleFieldWithReferencePrices.graphql, documentation/user/en/query/requirements/examples/fetching/associatedDataContent.graphql, documentation/user/en/query/requirements/examples/fetching/associatedDataContentAll.graphql, documentation/user/en/query/requirements/examples/fetching/attributeContent.graphql, documentation/user/en/query/requirements/examples/fetching/attributeContentAll.graphql, documentation/user/en/query/requirements/examples/fetching/basicEntityContent.graphql, documentation/user/en/query/requirements/examples/fetching/dataInLocales.graphql, documentation/user/en/query/requirements/examples/fetching/dataInLocalesAll.graphql, documentation/user/en/query/requirements/examples/fetching/dataInLocalesWithFilter.graphql, documentation/user/en/query/requirements/examples/fetching/entityContent.graphql, documentation/user/en/query/requirements/examples/fetching/hierarchyContent.graphql, documentation/user/en/query/requirements/examples/fetching/hierarchyContentViaReference.graphql, documentation/user/en/query/requirements/examples/fetching/localizedAssociatedData.graphql, documentation/user/en/query/requirements/examples/fetching/localizedAssociatedDataWithFilter.graphql, documentation/user/en/query/requirements/examples/fetching/localizedAttributes.graphql, documentation/user/en/query/requirements/examples/fetching/localizedAttributesWithFilter.graphql, documentation/user/en/query/requirements/examples/fetching/namedReferenceContent.graphql, documentation/user/en/query/requirements/examples/fetching/priceContent.graphql, documentation/user/en/query/requirements/examples/fetching/priceContentAll.graphql, documentation/user/en/query/requirements/examples/fetching/priceContentRespectingFilter.graphql, documentation/user/en/query/requirements/examples/fetching/priceForSaleField.graphql, documentation/user/en/query/requirements/examples/fetching/priceForSaleFieldWithArguments.graphql, documentation/user/en/query/requirements/examples/fetching/priceForSaleRangeField.graphql, documentation/user/en/query/requirements/examples/fetching/pricesField.graphql, documentation/user/en/query/requirements/examples/fetching/pricesFieldFiltered.graphql, documentation/user/en/query/requirements/examples/fetching/referenceContent.graphql, documentation/user/en/query/requirements/examples/fetching/referenceContentAll.graphql, documentation/user/en/query/requirements/examples/fetching/referenceContentBodies.graphql, documentation/user/en/query/requirements/examples/fetching/referenceContentFilter.graphql, documentation/user/en/query/requirements/examples/fetching/referenceContentNested.graphql, documentation/user/en/query/requirements/examples/fetching/referenceContentOrder.graphql, documentation/user/en/query/requirements/examples/fetching/referenceContentPage.graphql, documentation/user/en/query/requirements/examples/fetching/referenceContentPageEmpty.graphql, documentation/user/en/query/requirements/examples/fetching/referenceContentWithAttributes.graphql, documentation/user/en/query/requirements/examples/hierarchy/hierarchy-children.graphql, documentation/user/en/query/requirements/examples/hierarchy/hierarchy-data-structure-association.graphql, documentation/user/en/query/requirements/examples/hierarchy/hierarchy-direct-children.graphql, documentation/user/en/query/requirements/examples/hierarchy/hierarchy-from-node.graphql, documentation/user/en/query/requirements/examples/hierarchy/hierarchy-from-root.graphql, documentation/user/en/query/requirements/examples/hierarchy/hierarchy-level-parent.graphql, documentation/user/en/query/requirements/examples/hierarchy/hierarchy-level.graphql, documentation/user/en/query/requirements/examples/hierarchy/hierarchy-node.graphql, documentation/user/en/query/requirements/examples/hierarchy/hierarchy-parent.graphql, documentation/user/en/query/requirements/examples/hierarchy/hierarchy-parents-siblings.graphql, documentation/user/en/query/requirements/examples/hierarchy/hierarchy-parents.graphql, documentation/user/en/query/requirements/examples/hierarchy/hierarchy-siblings-with-subtree.graphql, documentation/user/en/query/requirements/examples/hierarchy/hierarchy-siblings.graphql, documentation/user/en/query/requirements/examples/histogram/attribute-histogram-equalized.graphql, documentation/user/en/query/requirements/examples/histogram/attribute-histogram-optimized.graphql, documentation/user/en/query/requirements/examples/histogram/attribute-histogram.graphql, documentation/user/en/query/requirements/examples/histogram/price-histogram-equalized.graphql, documentation/user/en/query/requirements/examples/histogram/price-histogram-optimized.graphql, documentation/user/en/query/requirements/examples/histogram/price-histogram.graphql, documentation/user/en/query/requirements/examples/paging/listEntities.graphql, documentation/user/en/query/requirements/examples/paging/page.graphql, documentation/user/en/query/requirements/examples/paging/spacing_page1.graphql, documentation/user/en/query/requirements/examples/paging/spacing_page2.graphql, documentation/user/en/query/requirements/examples/paging/spacing_page4.graphql, documentation/user/en/query/requirements/examples/paging/strip.graphql, documentation/user/en/query/requirements/examples/price/price-type-without-tax.graphql, documentation/user/en/query/requirements/examples/price/price-type.graphql, documentation/user/en/query/requirements/examples/telemetry/queryTelemetry.graphql, documentation/user/en/solve/examples/filtering-products-in-category/breadcrumb-category.graphql, documentation/user/en/solve/examples/filtering-products-in-category/breadcrumb-product.graphql, documentation/user/en/solve/examples/filtering-products-in-category/category-description.graphql, documentation/user/en/solve/examples/filtering-products-in-category/category-details-with-breadcrumb.graphql, documentation/user/en/solve/examples/filtering-products-in-category/faceted-search-brand.graphql, documentation/user/en/solve/examples/filtering-products-in-category/faceted-search.graphql, documentation/user/en/solve/examples/filtering-products-in-category/price-filter.graphql, documentation/user/en/solve/examples/filtering-products-in-category/product-listing-with-facets-and-sorting.graphql, documentation/user/en/solve/examples/filtering-products-in-category/product-listing.graphql, documentation/user/en/solve/examples/filtering-products-in-category/top-selling-products.graphql, documentation/user/en/solve/examples/render-category-menu/dynamic-collapsible-menu-sub-category.graphql, documentation/user/en/solve/examples/render-category-menu/dynamic-collapsible-menu.graphql, documentation/user/en/solve/examples/render-category-menu/excluding-expired-categories-at-correct-time.graphql, documentation/user/en/solve/examples/render-category-menu/excluding-expired-categories.graphql, documentation/user/en/solve/examples/render-category-menu/excluding-private-categories.graphql, documentation/user/en/solve/examples/render-category-menu/hybrid-menu.graphql, documentation/user/en/solve/examples/render-category-menu/mega-menu-with-product-statistics.graphql, documentation/user/en/solve/examples/render-category-menu/mega-menu.graphql, documentation/user/en/solve/examples/render-category-menu/sub-categories-listing.graphql, documentation/user/en/solve/examples/routing/get-by-globally-unique-attribute.graphql, documentation/user/en/solve/examples/routing/get-by-globally-unique-locale-specific-attribute.graphql, documentation/user/en/solve/examples/routing/get-by-unique-attribute.graphql, documentation/user/en/solve/examples/routing/get-category-with-data.graphql, documentation/user/en/solve/examples/routing/get-product-with-data.graphql, documentation/user/en/use/api/example/capture-attribute-mutation-data-api.graphql, documentation/user/en/use/api/example/capture-attribute-mutation-graphql.graphql, documentation/user/en/use/api/example/capture-attribute-mutation-schema-api.graphql, documentation/user/en/use/api/example/capture-entity-mutations-with-transaction-graphql.graphql, documentation/user/en/use/api/example/catalog-change-capture-data-api.graphql, documentation/user/en/use/api/example/catalog-change-capture-graphql.graphql, documentation/user/en/use/api/example/catalog-change-capture-schema-api.graphql, documentation/user/en/use/api/example/create-new-entity.graphql, documentation/user/en/use/api/example/delete-entities-by-query.graphql, documentation/user/en/use/api/example/engine-change-capture-graphql.graphql, documentation/user/en/use/api/example/evita-query-example.graphql, documentation/user/en/use/api/example/fetching-example.graphql, documentation/user/en/use/api/example/finalization-of-warmup-mode.graphql, documentation/user/en/use/api/example/graphql-full-query-example.graphql, documentation/user/en/use/api/example/graphql-get-entity-query-example.graphql, documentation/user/en/use/api/example/graphql-get-entity-with-target-entity-query-example.graphql, documentation/user/en/use/api/example/graphql-get-query-example.graphql, documentation/user/en/use/api/example/graphql-list-entity-query-example.graphql, documentation/user/en/use/api/example/graphql-list-entity-with-target-entity-query-example.graphql, documentation/user/en/use/api/example/graphql-list-query-example.graphql, documentation/user/en/use/api/example/imperative-catalog-schema-definition.graphql, documentation/user/en/use/api/example/imperative-collection-schema-definition.graphql, documentation/user/en/use/api/example/update-existing-entity.graphql, evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcAssociatedData.proto, evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcAssociatedDataMutations.proto, evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcAssociatedDataSchemaMutations.proto, evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcAttribute.proto, evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcAttributeMutations.proto, evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcAttributeSchemaMutations.proto, evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcCatalogSchema.proto, evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcCatalogSchemaMutation.proto, evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcCatalogSchemaMutations.proto, evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcChangeCapture.proto, evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcEngineMutation.proto, evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcEntity.proto, evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcEntityMutation.proto, evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcEntityMutations.proto, evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcEntitySchema.proto, evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcEntitySchemaMutation.proto, evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcEntitySchemaMutations.proto, evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcEnums.proto, evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcEvitaAPI.proto, evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcEvitaDataTypes.proto, evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcEvitaManagementAPI.proto, evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcEvitaSessionAPI.proto, evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcEvitaTrafficRecordingAPI.proto, evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcExtraResults.proto, evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcInfrastrutureMutation.proto, evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcLocalMutation.proto, evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcPrice.proto, evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcPriceMutations.proto, evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcQueryParam.proto, evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcReferenceMutations.proto, evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcReferenceSchemaMutations.proto, evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcSortableAttributeCompoundSchemaMutations.proto, evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcTrafficRecording.proto, evita_test/evita_functional_tests/src/test/resources/testData/CatalogGraphQLQueryTranslationVerifyingFunctionTest_query.graphql",
"points": 40,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "documentation/blog/en/examples/17-one-to-many/article-spacing.graphql, documentation/blog/en/examples/17-one-to-many/product-categories-tags.graphql, documentation/blog/en/examples/17-one-to-many/product-categories.graphql, documentation/blog/en/examples/17-one-to-many/product-groups.graphql, documentation/blog/en/examples/17-one-to-many/product-parameters-top10.graphql, documentation/blog/en/examples/17-one-to-many/product-stock-existence.graphql, documentation/blog/en/examples/25-faceted-filter-choreography/01-full-panel.graphql, documentation/blog/en/examples/string_contains/string_contains.graphql, documentation/publishing/root.cz/04-web-APIs/getProduct.graphql, documentation/user/en/get-started/example/create-first-entity.graphql, documentation/user/en/get-started/example/create-small-dataset.graphql, documentation/user/en/get-started/example/define-catalog.graphql, documentation/user/en/get-started/example/define-schema-for-catalog.graphql, documentation/user/en/get-started/example/delete-entity-by-query.graphql, documentation/user/en/get-started/example/filter-order-entities.graphql, documentation/user/en/get-started/example/filter-order-products-by-price.graphql, documentation/user/en/get-started/example/list-entities.graphql, documentation/user/en/get-started/example/query-demo-server.graphql, documentation/user/en/get-started/example/read-entity-by-pk.graphql, documentation/user/en/get-started/example/update-entity.graphql, documentation/user/en/query/examples/complexGrammar.graphql, documentation/user/en/query/examples/grammar.graphql, documentation/user/en/query/examples/randomOrderQuery.graphql, documentation/user/en/query/examples/simplestQuery.graphql, documentation/user/en/query/filtering/examples/behavioral/archived-entities-filtering.graphql, documentation/user/en/query/filtering/examples/behavioral/archived-entities-listing.graphql, documentation/user/en/query/filtering/examples/behavioral/user-filter.graphql, documentation/user/en/query/filtering/examples/comparable/attribute-between.graphql, documentation/user/en/query/filtering/examples/comparable/attribute-equals.graphql, documentation/user/en/query/filtering/examples/comparable/attribute-greater-than-equals.graphql, documentation/user/en/query/filtering/examples/comparable/attribute-greater-than.graphql, documentation/user/en/query/filtering/examples/comparable/attribute-in-set.graphql, documentation/user/en/query/filtering/examples/comparable/attribute-is-not-null.graphql, documentation/user/en/query/filtering/examples/comparable/attribute-is-null.graphql, documentation/user/en/query/filtering/examples/comparable/attribute-less-than-equals.graphql, documentation/user/en/query/filtering/examples/comparable/attribute-less-than.graphql, documentation/user/en/query/filtering/examples/constant/entity-primary-key-in-set.graphql, documentation/user/en/query/filtering/examples/hierarchy/hierarchy-within-reference-any-having.graphql, documentation/user/en/query/filtering/examples/hierarchy/hierarchy-within-reference-direct-categories-smart.graphql, documentation/user/en/query/filtering/examples/hierarchy/hierarchy-within-reference-direct-categories.graphql, documentation/user/en/query/filtering/examples/hierarchy/hierarchy-within-reference-except.graphql, documentation/user/en/query/filtering/examples/hierarchy/hierarchy-within-reference-excluding-root.graphql, documentation/user/en/query/filtering/examples/hierarchy/hierarchy-within-reference-having-december.graphql, documentation/user/en/query/filtering/examples/hierarchy/hierarchy-within-reference-having.graphql, documentation/user/en/query/filtering/examples/hierarchy/hierarchy-within-reference-simple.graphql, documentation/user/en/query/filtering/examples/hierarchy/hierarchy-within-root-reference-simple.graphql, documentation/user/en/query/filtering/examples/hierarchy/hierarchy-within-root-simple.graphql, documentation/user/en/query/filtering/examples/hierarchy/hierarchy-within-self-any-having.graphql, documentation/user/en/query/filtering/examples/hierarchy/hierarchy-within-self-direct-categories.graphql, documentation/user/en/query/filtering/examples/hierarchy/hierarchy-within-self-excluding-root.graphql, documentation/user/en/query/filtering/examples/hierarchy/hierarchy-within-self-excluding.graphql, documentation/user/en/query/filtering/examples/hierarchy/hierarchy-within-self-having.graphql, documentation/user/en/query/filtering/examples/hierarchy/hierarchy-within-self-multi.graphql, documentation/user/en/query/filtering/examples/hierarchy/hierarchy-within-self-simple.graphql, documentation/user/en/query/filtering/examples/hierarchy/hierarchy-within-self-top-categories.graphql, documentation/user/en/query/filtering/examples/locale/locale.graphql, documentation/user/en/query/filtering/examples/locale/locale_missing.graphql, documentation/user/en/query/filtering/examples/logical/and.graphql, documentation/user/en/query/filtering/examples/logical/implicit-binding.graphql, documentation/user/en/query/filtering/examples/logical/not-narrowed.graphql, documentation/user/en/query/filtering/examples/logical/not.graphql, documentation/user/en/query/filtering/examples/logical/or.graphql, documentation/user/en/query/filtering/examples/price/price-between.graphql, documentation/user/en/query/filtering/examples/price/price-in-currency.graphql, documentation/user/en/query/filtering/examples/price/price-in-price-lists.graphql, documentation/user/en/query/filtering/examples/price/price-valid-in-correct.graphql, documentation/user/en/query/filtering/examples/price/price-valid-in.graphql, documentation/user/en/query/filtering/examples/price/price.graphql, documentation/user/en/query/filtering/examples/range/attribute-in-range.graphql, documentation/user/en/query/filtering/examples/references/entity-having.graphql, documentation/user/en/query/filtering/examples/references/facet-having.graphql, documentation/user/en/query/filtering/examples/references/facet-including-children-except.graphql, documentation/user/en/query/filtering/examples/references/facet-including-children-having.graphql, documentation/user/en/query/filtering/examples/references/facet-including-children.graphql, documentation/user/en/query/filtering/examples/references/group-having.graphql, documentation/user/en/query/filtering/examples/references/histogram-having.graphql, documentation/user/en/query/filtering/examples/references/reference-having-any.graphql, documentation/user/en/query/filtering/examples/references/reference-having-exact-id.graphql, documentation/user/en/query/filtering/examples/references/reference-having.graphql, documentation/user/en/query/filtering/examples/string/attribute-contains.graphql, documentation/user/en/query/filtering/examples/string/attribute-ends-with.graphql, documentation/user/en/query/filtering/examples/string/attribute-starts-with.graphql, documentation/user/en/query/header/examples/labels.graphql, documentation/user/en/query/ordering/examples/behavioral/archived-entities-ordering.graphql, documentation/user/en/query/ordering/examples/comparable/attribute-natural-localized.graphql, documentation/user/en/query/ordering/examples/comparable/attribute-natural-multiple.graphql, documentation/user/en/query/ordering/examples/comparable/attribute-natural-non-localized.graphql, documentation/user/en/query/ordering/examples/comparable/primary-key-natural.graphql, documentation/user/en/query/ordering/examples/constant/attribute-set-exact.graphql, documentation/user/en/query/ordering/examples/constant/attribute-set-in-filter.graphql, documentation/user/en/query/ordering/examples/constant/entity-primary-key-exact.graphql, documentation/user/en/query/ordering/examples/constant/entity-primary-key-in-filter.graphql, documentation/user/en/query/ordering/examples/price/price-discount.graphql, documentation/user/en/query/ordering/examples/price/price-natural.graphql, documentation/user/en/query/ordering/examples/random/pseudo-random.graphql, documentation/user/en/query/ordering/examples/random/random.graphql, documentation/user/en/query/ordering/examples/reference/entity-group-property.graphql, documentation/user/en/query/ordering/examples/reference/entity-property.graphql, documentation/user/en/query/ordering/examples/reference/reference-attribute-natural-hierarchy.graphql, documentation/user/en/query/ordering/examples/reference/reference-attribute-natural-multiple-explicit.graphql, documentation/user/en/query/ordering/examples/reference/reference-attribute-natural-multiple.graphql, documentation/user/en/query/ordering/examples/reference/reference-attribute-natural.graphql, documentation/user/en/query/ordering/examples/reference/reference-traverse-by.graphql, documentation/user/en/query/ordering/examples/segment/segments.graphql, documentation/user/en/query/requirements/examples/behavioral/archived-entities-requirements.graphql, documentation/user/en/query/requirements/examples/facet/change-default-calculation-rules.graphql, documentation/user/en/query/requirements/examples/facet/facet-groups-conjunction.graphql, documentation/user/en/query/requirements/examples/facet/facet-groups-disjunction.graphql, documentation/user/en/query/requirements/examples/facet/facet-groups-exclusivity.graphql, documentation/user/en/query/requirements/examples/facet/facet-groups-negation.graphql, documentation/user/en/query/requirements/examples/facet/reference-summary-bodies.graphql, documentation/user/en/query/requirements/examples/facet/reference-summary-filtering.graphql, documentation/user/en/query/requirements/examples/facet/reference-summary-histograms.graphql, documentation/user/en/query/requirements/examples/facet/reference-summary-localized-bodies.graphql, documentation/user/en/query/requirements/examples/facet/reference-summary-of-reference.graphql, documentation/user/en/query/requirements/examples/facet/reference-summary-ordering.graphql, documentation/user/en/query/requirements/examples/facet/reference-summary.graphql, documentation/user/en/query/requirements/examples/fetching/accompanying-price-content.graphql, documentation/user/en/query/requirements/examples/fetching/allPricesForSaleField.graphql, documentation/user/en/query/requirements/examples/fetching/allPricesForSaleFieldWithReferencePrices.graphql, documentation/user/en/query/requirements/examples/fetching/associatedDataContent.graphql, documentation/user/en/query/requirements/examples/fetching/associatedDataContentAll.graphql, documentation/user/en/query/requirements/examples/fetching/attributeContent.graphql, documentation/user/en/query/requirements/examples/fetching/attributeContentAll.graphql, documentation/user/en/query/requirements/examples/fetching/basicEntityContent.graphql, documentation/user/en/query/requirements/examples/fetching/dataInLocales.graphql, documentation/user/en/query/requirements/examples/fetching/dataInLocalesAll.graphql, documentation/user/en/query/requirements/examples/fetching/dataInLocalesWithFilter.graphql, documentation/user/en/query/requirements/examples/fetching/entityContent.graphql, documentation/user/en/query/requirements/examples/fetching/hierarchyContent.graphql, documentation/user/en/query/requirements/examples/fetching/hierarchyContentViaReference.graphql, documentation/user/en/query/requirements/examples/fetching/localizedAssociatedData.graphql, documentation/user/en/query/requirements/examples/fetching/localizedAssociatedDataWithFilter.graphql, documentation/user/en/query/requirements/examples/fetching/localizedAttributes.graphql, documentation/user/en/query/requirements/examples/fetching/localizedAttributesWithFilter.graphql, documentation/user/en/query/requirements/examples/fetching/namedReferenceContent.graphql, documentation/user/en/query/requirements/examples/fetching/priceContent.graphql, documentation/user/en/query/requirements/examples/fetching/priceContentAll.graphql, documentation/user/en/query/requirements/examples/fetching/priceContentRespectingFilter.graphql, documentation/user/en/query/requirements/examples/fetching/priceForSaleField.graphql, documentation/user/en/query/requirements/examples/fetching/priceForSaleFieldWithArguments.graphql, documentation/user/en/query/requirements/examples/fetching/priceForSaleRangeField.graphql, documentation/user/en/query/requirements/examples/fetching/pricesField.graphql, documentation/user/en/query/requirements/examples/fetching/pricesFieldFiltered.graphql, documentation/user/en/query/requirements/examples/fetching/referenceContent.graphql, documentation/user/en/query/requirements/examples/fetching/referenceContentAll.graphql, documentation/user/en/query/requirements/examples/fetching/referenceContentBodies.graphql, documentation/user/en/query/requirements/examples/fetching/referenceContentFilter.graphql, documentation/user/en/query/requirements/examples/fetching/referenceContentNested.graphql, documentation/user/en/query/requirements/examples/fetching/referenceContentOrder.graphql, documentation/user/en/query/requirements/examples/fetching/referenceContentPage.graphql, documentation/user/en/query/requirements/examples/fetching/referenceContentPageEmpty.graphql, documentation/user/en/query/requirements/examples/fetching/referenceContentWithAttributes.graphql, documentation/user/en/query/requirements/examples/hierarchy/hierarchy-children.graphql, documentation/user/en/query/requirements/examples/hierarchy/hierarchy-data-structure-association.graphql, documentation/user/en/query/requirements/examples/hierarchy/hierarchy-direct-children.graphql, documentation/user/en/query/requirements/examples/hierarchy/hierarchy-from-node.graphql, documentation/user/en/query/requirements/examples/hierarchy/hierarchy-from-root.graphql, documentation/user/en/query/requirements/examples/hierarchy/hierarchy-level-parent.graphql, documentation/user/en/query/requirements/examples/hierarchy/hierarchy-level.graphql, documentation/user/en/query/requirements/examples/hierarchy/hierarchy-node.graphql, documentation/user/en/query/requirements/examples/hierarchy/hierarchy-parent.graphql, documentation/user/en/query/requirements/examples/hierarchy/hierarchy-parents-siblings.graphql, documentation/user/en/query/requirements/examples/hierarchy/hierarchy-parents.graphql, documentation/user/en/query/requirements/examples/hierarchy/hierarchy-siblings-with-subtree.graphql, documentation/user/en/query/requirements/examples/hierarchy/hierarchy-siblings.graphql, documentation/user/en/query/requirements/examples/histogram/attribute-histogram-equalized.graphql, documentation/user/en/query/requirements/examples/histogram/attribute-histogram-optimized.graphql, documentation/user/en/query/requirements/examples/histogram/attribute-histogram.graphql, documentation/user/en/query/requirements/examples/histogram/price-histogram-equalized.graphql, documentation/user/en/query/requirements/examples/histogram/price-histogram-optimized.graphql, documentation/user/en/query/requirements/examples/histogram/price-histogram.graphql, documentation/user/en/query/requirements/examples/paging/listEntities.graphql, documentation/user/en/query/requirements/examples/paging/page.graphql, documentation/user/en/query/requirements/examples/paging/spacing_page1.graphql, documentation/user/en/query/requirements/examples/paging/spacing_page2.graphql, documentation/user/en/query/requirements/examples/paging/spacing_page4.graphql, documentation/user/en/query/requirements/examples/paging/strip.graphql, documentation/user/en/query/requirements/examples/price/price-type-without-tax.graphql, documentation/user/en/query/requirements/examples/price/price-type.graphql, documentation/user/en/query/requirements/examples/telemetry/queryTelemetry.graphql, documentation/user/en/solve/examples/filtering-products-in-category/breadcrumb-category.graphql, documentation/user/en/solve/examples/filtering-products-in-category/breadcrumb-product.graphql, documentation/user/en/solve/examples/filtering-products-in-category/category-description.graphql, documentation/user/en/solve/examples/filtering-products-in-category/category-details-with-breadcrumb.graphql, documentation/user/en/solve/examples/filtering-products-in-category/faceted-search-brand.graphql, documentation/user/en/solve/examples/filtering-products-in-category/faceted-search.graphql, documentation/user/en/solve/examples/filtering-products-in-category/price-filter.graphql, documentation/user/en/solve/examples/filtering-products-in-category/product-listing-with-facets-and-sorting.graphql, documentation/user/en/solve/examples/filtering-products-in-category/product-listing.graphql, documentation/user/en/solve/examples/filtering-products-in-category/top-selling-products.graphql, documentation/user/en/solve/examples/render-category-menu/dynamic-collapsible-menu-sub-category.graphql, documentation/user/en/solve/examples/render-category-menu/dynamic-collapsible-menu.graphql, documentation/user/en/solve/examples/render-category-menu/excluding-expired-categories-at-correct-time.graphql, documentation/user/en/solve/examples/render-category-menu/excluding-expired-categories.graphql, documentation/user/en/solve/examples/render-category-menu/excluding-private-categories.graphql, documentation/user/en/solve/examples/render-category-menu/hybrid-menu.graphql, documentation/user/en/solve/examples/render-category-menu/mega-menu-with-product-statistics.graphql, documentation/user/en/solve/examples/render-category-menu/mega-menu.graphql, documentation/user/en/solve/examples/render-category-menu/sub-categories-listing.graphql, documentation/user/en/solve/examples/routing/get-by-globally-unique-attribute.graphql, documentation/user/en/solve/examples/routing/get-by-globally-unique-locale-specific-attribute.graphql, documentation/user/en/solve/examples/routing/get-by-unique-attribute.graphql, documentation/user/en/solve/examples/routing/get-category-with-data.graphql, documentation/user/en/solve/examples/routing/get-product-with-data.graphql, documentation/user/en/use/api/example/capture-attribute-mutation-data-api.graphql, documentation/user/en/use/api/example/capture-attribute-mutation-graphql.graphql, documentation/user/en/use/api/example/capture-attribute-mutation-schema-api.graphql, documentation/user/en/use/api/example/capture-entity-mutations-with-transaction-graphql.graphql, documentation/user/en/use/api/example/catalog-change-capture-data-api.graphql, documentation/user/en/use/api/example/catalog-change-capture-graphql.graphql, documentation/user/en/use/api/example/catalog-change-capture-schema-api.graphql, documentation/user/en/use/api/example/create-new-entity.graphql, documentation/user/en/use/api/example/delete-entities-by-query.graphql, documentation/user/en/use/api/example/engine-change-capture-graphql.graphql, documentation/user/en/use/api/example/evita-query-example.graphql, documentation/user/en/use/api/example/fetching-example.graphql, documentation/user/en/use/api/example/finalization-of-warmup-mode.graphql, documentation/user/en/use/api/example/graphql-full-query-example.graphql, documentation/user/en/use/api/example/graphql-get-entity-query-example.graphql, documentation/user/en/use/api/example/graphql-get-entity-with-target-entity-query-example.graphql, documentation/user/en/use/api/example/graphql-get-query-example.graphql, documentation/user/en/use/api/example/graphql-list-entity-query-example.graphql, documentation/user/en/use/api/example/graphql-list-entity-with-target-entity-query-example.graphql, documentation/user/en/use/api/example/graphql-list-query-example.graphql, documentation/user/en/use/api/example/imperative-catalog-schema-definition.graphql, documentation/user/en/use/api/example/imperative-collection-schema-definition.graphql, documentation/user/en/use/api/example/update-existing-entity.graphql, evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcAssociatedData.proto, evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcAssociatedDataMutations.proto, evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcAssociatedDataSchemaMutations.proto, evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcAttribute.proto, evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcAttributeMutations.proto, evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcAttributeSchemaMutations.proto, evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcCatalogSchema.proto, evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcCatalogSchemaMutation.proto, evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcCatalogSchemaMutations.proto, evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcChangeCapture.proto, evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcEngineMutation.proto, evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcEntity.proto, evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcEntityMutation.proto, evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcEntityMutations.proto, evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcEntitySchema.proto, evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcEntitySchemaMutation.proto, evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcEntitySchemaMutations.proto, evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcEnums.proto, evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcEvitaAPI.proto, evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcEvitaDataTypes.proto, evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcEvitaManagementAPI.proto, evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcEvitaSessionAPI.proto, evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcEvitaTrafficRecordingAPI.proto, evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcExtraResults.proto, evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcInfrastrutureMutation.proto, evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcLocalMutation.proto, evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcPrice.proto, evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcPriceMutations.proto, evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcQueryParam.proto, evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcReferenceMutations.proto, evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcReferenceSchemaMutations.proto, evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcSortableAttributeCompoundSchemaMutations.proto, evita_external_api/evita_external_api_grpc/shared/src/main/resources/META-INF/io/evitadb/externalApi/grpc/GrpcTrafficRecording.proto, evita_test/evita_functional_tests/src/test/resources/testData/CatalogGraphQLQueryTranslationVerifyingFunctionTest_query.graphql"
}
}
],
"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": "example, examples",
"points": 40,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "example, examples"
}
}
],
"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",
"Could not fetch maven package 'io.evitadb:evita_roaring_bitmap' from its registry",
"deps.dev does not index maven:io.evitadb:jacoco@2026.1.20; advisories assessed against the repository dependency graph instead"
],
"report_type": "repository",
"generated_at": "2026-07-24T12:00:31.527201Z",
"schema_version": "0.27.0",
"badge_url": "https://raw.githubusercontent.com/inspect-software/badges/main/v1/f/FgForrest/evitaDB.svg",
"full_name": "FgForrest/evitaDB",
"license_state": "custom",
"license_spdx": null
}