feature/treesitter-tag-queries #2

Open
tobi wants to merge 78 commits from feature/treesitter-tag-queries into main
3 changed files with 596 additions and 608 deletions
Showing only changes of commit d65b78bdf1 - Show all commits

View file

@ -49,6 +49,14 @@ BEHAVIORAL_PREFIXES = (
"label", "label",
"type.definition", "type.definition",
"module", "module",
# Bare captures from Kotlin highlights.scm
# (Kotlin uses "conditional" not "keyword.conditional", etc.)
# Excluded: "variable" (too noisy — every identifier reference)
"conditional",
"exception",
"repeat",
"property",
"type",
) )
CALL_PREFIXES = ("function.call", "function.method.call", "reference.call", "reference.class", "constructor", "function") CALL_PREFIXES = ("function.call", "function.method.call", "reference.call", "reference.class", "constructor", "function")
@ -59,7 +67,9 @@ def coarsen_token(capname):
Uses capture names from highlights.scm same across all languages. Uses capture names from highlights.scm same across all languages.
Function calls are kept as raw text (they ARE the behavioral content). Function calls are kept as raw text (they ARE the behavioral content).
Only structural tokens (keywords, types) are coarsened. Only the 4 highest-signal structural tokens are coarsened:
RETURN, IF, EXCEPTION, LOOP. Everything else kept raw.
Handles both dotted (keyword.conditional) and bare (conditional) captures.
""" """
if capname.startswith("function.call") or capname.startswith("reference.call"): if capname.startswith("function.call") or capname.startswith("reference.call"):
return None # keep raw return None # keep raw
@ -69,41 +79,19 @@ def coarsen_token(capname):
return None # keep raw return None # keep raw
if capname.startswith("function"): if capname.startswith("function"):
return None # keep raw (bare @function in Kotlin etc.) return None # keep raw (bare @function in Kotlin etc.)
if capname.startswith("keyword.return"): if capname.startswith("keyword.return") or capname == "return":
return "RETURN" return "RETURN"
if capname.startswith("keyword.raise") or capname.startswith("keyword.throw"): if capname.startswith("keyword.raise") or capname.startswith("keyword.throw") or capname == "raise":
return "RAISE" return "RAISE"
if capname.startswith("keyword.yield"): if capname.startswith("keyword.yield") or capname == "yield":
return "YIELD" return "YIELD"
if capname.startswith("keyword.exception"): if capname.startswith("keyword.exception") or capname == "exception":
return "EXCEPTION" return "EXCEPTION"
if capname.startswith("keyword.conditional"): if capname.startswith("keyword.conditional") or capname == "conditional":
return "IF" return "IF"
if capname.startswith("keyword.repeat"): if capname.startswith("keyword.repeat") or capname == "repeat":
return "LOOP" return "LOOP"
if capname.startswith("keyword.function"): return None # keep everything else raw
return "FUN"
if capname.startswith("keyword"):
return "KW"
if capname.startswith("type.definition"):
return "TYPE"
if capname.startswith("type"):
return "TYPE"
if capname.startswith("variable.builtin"):
return "BUILTIN"
if capname.startswith("variable"):
return "VAR"
if capname.startswith("constant"):
return "CONST"
if capname.startswith("string"):
return "STR"
if capname.startswith("number"):
return "NUM"
if capname.startswith("boolean"):
return "BOOL"
if capname.startswith("attribute"):
return "ATTR"
return "OTHER"
def _extract_coarsened_tokens(seq): def _extract_coarsened_tokens(seq):

View file

@ -1,7 +1,7 @@
{ {
"name": "Flask", "name": "Flask",
"raw": { "raw": {
"seq_count": 1391, "seq_count": 1424,
"alphabet_size": 1055, "alphabet_size": 1055,
"alphabet_sample": [ "alphabet_sample": [
"", "",
@ -38,18 +38,18 @@
"k1": { "k1": {
"contexts": 373, "contexts": 373,
"sore_successes": 22, "sore_successes": 22,
"total_methods": 1391, "total_methods": 1424,
"methods_in_good": 64, "methods_in_good": 64,
"coverage": 4.6, "coverage": 4.5,
"cross_package_contexts": 58, "cross_package_contexts": 58,
"elapsed": 0.0, "elapsed": 0.001,
"top_groups": [ "top_groups": [
{ {
"context": "('_eps',)", "context": "('_eps',)",
"label": "raw_k1", "label": "raw_k1",
"methods": 282, "methods": 315,
"unique": 1, "unique": 1,
"unique_ratio": 0.004, "unique_ratio": 0.003,
"alphabet_size": 0, "alphabet_size": 0,
"sore": null, "sore": null,
"sore_success": false "sore_success": false
@ -148,7 +148,7 @@
"cross_pkg_examples": [ "cross_pkg_examples": [
{ {
"context": "('_eps',)", "context": "('_eps',)",
"packages": 9 "packages": 10
}, },
{ {
"context": "('get',)", "context": "('get',)",
@ -175,7 +175,7 @@
"packages": 4 "packages": 4
}, },
{ {
"context": "('post',)", "context": "('test_client',)",
"packages": 3 "packages": 3
}, },
{ {
@ -183,7 +183,7 @@
"packages": 3 "packages": 3
}, },
{ {
"context": "('test_client',)", "context": "('post',)",
"packages": 3 "packages": 3
} }
] ]
@ -191,18 +191,18 @@
"k2": { "k2": {
"contexts": 389, "contexts": 389,
"sore_successes": 22, "sore_successes": 22,
"total_methods": 1391, "total_methods": 1424,
"methods_in_good": 64, "methods_in_good": 64,
"coverage": 4.6, "coverage": 4.5,
"cross_package_contexts": 54, "cross_package_contexts": 54,
"elapsed": 0.001, "elapsed": 0.002,
"top_groups": [ "top_groups": [
{ {
"context": "('_eps',)", "context": "('_eps',)",
"label": "raw_k2", "label": "raw_k2",
"methods": 282, "methods": 315,
"unique": 1, "unique": 1,
"unique_ratio": 0.004, "unique_ratio": 0.003,
"alphabet_size": 0, "alphabet_size": 0,
"sore": null, "sore": null,
"sore_success": false "sore_success": false
@ -301,7 +301,7 @@
"cross_pkg_examples": [ "cross_pkg_examples": [
{ {
"context": "('_eps',)", "context": "('_eps',)",
"packages": 9 "packages": 10
}, },
{ {
"context": "('get', 'get')", "context": "('get', 'get')",
@ -328,7 +328,7 @@
"packages": 4 "packages": 4
}, },
{ {
"context": "('post', 'post')", "context": "('test_client', 'test_client')",
"packages": 3 "packages": 3
}, },
{ {
@ -336,7 +336,7 @@
"packages": 3 "packages": 3
}, },
{ {
"context": "('test_client', 'test_client')", "context": "('post', 'post')",
"packages": 3 "packages": 3
} }
] ]
@ -344,18 +344,18 @@
"k3": { "k3": {
"contexts": 599, "contexts": 599,
"sore_successes": 43, "sore_successes": 43,
"total_methods": 1391, "total_methods": 1424,
"methods_in_good": 243, "methods_in_good": 243,
"coverage": 17.5, "coverage": 17.1,
"cross_package_contexts": 40, "cross_package_contexts": 40,
"elapsed": 0.001, "elapsed": 0.001,
"top_groups": [ "top_groups": [
{ {
"context": "('_eps',)", "context": "('_eps',)",
"label": "raw_k3", "label": "raw_k3",
"methods": 282, "methods": 315,
"unique": 1, "unique": 1,
"unique_ratio": 0.004, "unique_ratio": 0.003,
"alphabet_size": 0, "alphabet_size": 0,
"sore": null, "sore": null,
"sore_success": false "sore_success": false
@ -454,7 +454,7 @@
"cross_pkg_examples": [ "cross_pkg_examples": [
{ {
"context": "('_eps',)", "context": "('_eps',)",
"packages": 9 "packages": 10
}, },
{ {
"context": "('render_template', 'render_template')", "context": "('render_template', 'render_template')",
@ -469,11 +469,11 @@
"packages": 4 "packages": 4
}, },
{ {
"context": "('Flask', 'Flask', 'from_mapping')", "context": "('test_client', 'test_client')",
"packages": 3 "packages": 3
}, },
{ {
"context": "('test_client', 'test_client')", "context": "('Flask', 'Flask', 'from_mapping')",
"packages": 3 "packages": 3
}, },
{ {
@ -496,146 +496,146 @@
} }
}, },
"coarsened": { "coarsened": {
"seq_count": 1391, "seq_count": 1424,
"alphabet_size": 1063, "alphabet_size": 2569,
"alphabet_sample": [ "alphabet_sample": [
"", "",
"!r", "!r",
"\"",
"\" * 100)", "\" * 100)",
"\")", "\")",
"\",",
"\", \"index\",", "\", \"index\",",
"\", 301)\n\n wi",
"\", de", "\", de",
"\", su", "\", su",
"\"/\")", "\"/\")",
"\"/t", "\"/t",
"\"Conten",
"\"X-Bar\"",
"\"X-Foo\"", "\"X-Foo\"",
"\"]\n wea",
"\"about\"", "\"about\"",
"\"ba", "\"ba",
"\"cus", "\"cus",
"\"def",
"\"f",
"\"fake a", "\"fake a",
"\"fo", "\"fo",
"\"foo.vi", "\"foo.vi",
"\"h", "\"h",
"\"hello\"", "\"hello\"",
"\"in",
"\"lat", "\"lat",
"\"mer", "\"mer",
"\"nes", "\"nes"
"\"someth",
"\"spam\")",
"\"static",
"# ip addre",
"(\"\"), 40",
"(\"\", hea",
"()",
"(test",
"({\"msg\":"
], ],
"k1": { "k1": {
"contexts": 166, "contexts": 205,
"sore_successes": 3, "sore_successes": 2,
"total_methods": 1391, "total_methods": 1424,
"methods_in_good": 20, "methods_in_good": 4,
"coverage": 1.4, "coverage": 0.3,
"cross_package_contexts": 22, "cross_package_contexts": 27,
"elapsed": 0.0, "elapsed": 0.0,
"top_groups": [ "top_groups": [
{ {
"context": "('RETURN',)", "context": "('RETURN',)",
"label": "coarsened_k1", "label": "coarsened_k1",
"methods": 448, "methods": 420,
"unique": 101, "unique": 170,
"unique_ratio": 0.225, "unique_ratio": 0.405,
"alphabet_size": 97, "alphabet_size": 243,
"sore": null,
"sore_success": false
},
{
"context": "('ATTR',)",
"label": "coarsened_k1",
"methods": 120,
"unique": 112,
"unique_ratio": 0.933,
"alphabet_size": 296,
"sore": null, "sore": null,
"sore_success": false "sore_success": false
}, },
{ {
"context": "('IF',)", "context": "('IF',)",
"label": "coarsened_k1", "label": "coarsened_k1",
"methods": 117, "methods": 94,
"unique": 109, "unique": 92,
"unique_ratio": 0.932, "unique_ratio": 0.979,
"alphabet_size": 209, "alphabet_size": 447,
"sore": null, "sore": null,
"sore_success": false "sore_success": false
}, },
{ {
"context": "('KW',)", "context": "('app',)",
"label": "coarsened_k1", "label": "coarsened_k1",
"methods": 91, "methods": 79,
"unique": 80, "unique": 79,
"unique_ratio": 0.879, "unique_ratio": 1.0,
"alphabet_size": 246, "alphabet_size": 353,
"sore": null, "sore": null,
"sore_success": false "sore_success": false
}, },
{ {
"context": "('EXCEPTION',)", "context": "('EXCEPTION',)",
"label": "coarsened_k1", "label": "coarsened_k1",
"methods": 78, "methods": 74,
"unique": 43, "unique": 49,
"unique_ratio": 0.551, "unique_ratio": 0.662,
"alphabet_size": 83, "alphabet_size": 190,
"sore": null, "sore": null,
"sore_success": false "sore_success": false
}, },
{ {
"context": "('append',)", "context": "('@',)",
"label": "coarsened_k1", "label": "coarsened_k1",
"methods": 51, "methods": 69,
"unique": 3, "unique": 68,
"unique_ratio": 0.059, "unique_ratio": 0.986,
"alphabet_size": 4, "alphabet_size": 336,
"sore": null, "sore": null,
"sore_success": false "sore_success": false
}, },
{ {
"context": "('FUN',)", "context": "('self',)",
"label": "coarsened_k1", "label": "coarsened_k1",
"methods": 48, "methods": 65,
"unique": 46, "unique": 65,
"unique_ratio": 0.958,
"alphabet_size": 127,
"sore": null,
"sore_success": false
},
{
"context": "('Blueprint',)",
"label": "coarsened_k1",
"methods": 40,
"unique": 36,
"unique_ratio": 0.9,
"alphabet_size": 119,
"sore": null,
"sore_success": false
},
{
"context": "('get',)",
"label": "coarsened_k1",
"methods": 25,
"unique": 24,
"unique_ratio": 0.96,
"alphabet_size": 61,
"sore": null,
"sore_success": false
},
{
"context": "('Flask',)",
"label": "coarsened_k1",
"methods": 23,
"unique": 23,
"unique_ratio": 1.0, "unique_ratio": 1.0,
"alphabet_size": 69, "alphabet_size": 209,
"sore": null,
"sore_success": false
},
{
"context": "('flask',)",
"label": "coarsened_k1",
"methods": 62,
"unique": 26,
"unique_ratio": 0.419,
"alphabet_size": 59,
"sore": null,
"sore_success": false
},
{
"context": "('class',)",
"label": "coarsened_k1",
"methods": 42,
"unique": 42,
"unique_ratio": 1.0,
"alphabet_size": 300,
"sore": null,
"sore_success": false
},
{
"context": "('def',)",
"label": "coarsened_k1",
"methods": 32,
"unique": 31,
"unique_ratio": 0.969,
"alphabet_size": 169,
"sore": null,
"sore_success": false
},
{
"context": "('bp',)",
"label": "coarsened_k1",
"methods": 31,
"unique": 29,
"unique_ratio": 0.935,
"alphabet_size": 134,
"sore": null, "sore": null,
"sore_success": false "sore_success": false
} }
@ -646,7 +646,7 @@
"packages": 14 "packages": 14
}, },
{ {
"context": "('get',)", "context": "('app',)",
"packages": 7 "packages": 7
}, },
{ {
@ -654,19 +654,19 @@
"packages": 6 "packages": 6
}, },
{ {
"context": "('IF',)", "context": "('self',)",
"packages": 6 "packages": 6
}, },
{ {
"context": "('FUN',)", "context": "('IF',)",
"packages": 5 "packages": 5
}, },
{ {
"context": "('KW',)", "context": "('def',)",
"packages": 5 "packages": 5
}, },
{ {
"context": "('pop',)", "context": "('response',)",
"packages": 4 "packages": 4
}, },
{ {
@ -674,91 +674,61 @@
"packages": 4 "packages": 4
}, },
{ {
"context": "('setdefault',)", "context": "('class',)",
"packages": 4 "packages": 3
}, },
{ {
"context": "('Flask',)", "context": "('@',)",
"packages": 3 "packages": 3
} }
] ]
}, },
"k2": { "k2": {
"contexts": 353, "contexts": 570,
"sore_successes": 23, "sore_successes": 18,
"total_methods": 1391, "total_methods": 1424,
"methods_in_good": 346, "methods_in_good": 225,
"coverage": 24.9, "coverage": 15.8,
"cross_package_contexts": 49, "cross_package_contexts": 35,
"elapsed": 0.0, "elapsed": 0.002,
"top_groups": [ "top_groups": [
{ {
"context": "('RETURN',)", "context": "('RETURN',)",
"label": "coarsened_k2", "label": "coarsened_k2",
"methods": 234, "methods": 127,
"unique": 1, "unique": 1,
"unique_ratio": 0.004, "unique_ratio": 0.008,
"alphabet_size": 1, "alphabet_size": 1,
"sore": "RETURN", "sore": "RETURN",
"sore_success": true "sore_success": true
}, },
{ {
"context": "('ATTR', 'ATTR')", "context": "('RETURN', 'flask')",
"label": "coarsened_k2", "label": "coarsened_k2",
"methods": 80, "methods": 79,
"unique": 74, "unique": 30,
"unique_ratio": 0.925, "unique_ratio": 0.38,
"alphabet_size": 171, "alphabet_size": 38,
"sore": null, "sore": null,
"sore_success": false "sore_success": false
}, },
{ {
"context": "('IF', 'KW')", "context": "('@', 'app')",
"label": "coarsened_k2", "label": "coarsened_k2",
"methods": 67, "methods": 65,
"unique": 60, "unique": 64,
"unique_ratio": 0.896, "unique_ratio": 0.985,
"alphabet_size": 134, "alphabet_size": 319,
"sore": null, "sore": null,
"sore_success": false "sore_success": false
}, },
{ {
"context": "('append', 'append')", "context": "('RETURN', 'self')",
"label": "coarsened_k2",
"methods": 51,
"unique": 3,
"unique_ratio": 0.059,
"alphabet_size": 4,
"sore": null,
"sore_success": false
},
{
"context": "('Blueprint', 'Blueprint')",
"label": "coarsened_k2",
"methods": 40,
"unique": 36,
"unique_ratio": 0.9,
"alphabet_size": 119,
"sore": null,
"sore_success": false
},
{
"context": "('RETURN', 'render_template')",
"label": "coarsened_k2",
"methods": 33,
"unique": 2,
"unique_ratio": 0.061,
"alphabet_size": 3,
"sore": null,
"sore_success": false
},
{
"context": "('KW', 'FUN')",
"label": "coarsened_k2", "label": "coarsened_k2",
"methods": 32, "methods": 32,
"unique": 30, "unique": 27,
"unique_ratio": 0.938, "unique_ratio": 0.844,
"alphabet_size": 122, "alphabet_size": 56,
"sore": null, "sore": null,
"sore_success": false "sore_success": false
}, },
@ -766,225 +736,255 @@
"context": "('RETURN', 'isinstance')", "context": "('RETURN', 'isinstance')",
"label": "coarsened_k2", "label": "coarsened_k2",
"methods": 32, "methods": 32,
"unique": 2, "unique": 10,
"unique_ratio": 0.062, "unique_ratio": 0.312,
"alphabet_size": 6, "alphabet_size": 21,
"sore": null, "sore": null,
"sore_success": false "sore_success": false
}, },
{ {
"context": "('get', 'get')", "context": "('bp', 'flask')",
"label": "coarsened_k2", "label": "coarsened_k2",
"methods": 25, "methods": 31,
"unique": 24, "unique": 29,
"unique_ratio": 0.96, "unique_ratio": 0.935,
"alphabet_size": 61, "alphabet_size": 134,
"sore": null, "sore": null,
"sore_success": false "sore_success": false
}, },
{ {
"context": "('ATTR', 'route')", "context": "('RETURN', 's')",
"label": "coarsened_k2", "label": "coarsened_k2",
"methods": 24, "methods": 23,
"unique": 1,
"unique_ratio": 0.043,
"alphabet_size": 2,
"sore": "RETURN.s",
"sore_success": true
},
{
"context": "('IF', 'self')",
"label": "coarsened_k2",
"methods": 22,
"unique": 22, "unique": 22,
"unique_ratio": 0.917, "unique_ratio": 1.0,
"alphabet_size": 103, "alphabet_size": 145,
"sore": null,
"sore_success": false
},
{
"context": "('flask', 'g')",
"label": "coarsened_k2",
"methods": 20,
"unique": 8,
"unique_ratio": 0.4,
"alphabet_size": 29,
"sore": null,
"sore_success": false
},
{
"context": "('flask', 'session')",
"label": "coarsened_k2",
"methods": 20,
"unique": 11,
"unique_ratio": 0.55,
"alphabet_size": 30,
"sore": null, "sore": null,
"sore_success": false "sore_success": false
} }
], ],
"cross_pkg_examples": [ "cross_pkg_examples": [
{
"context": "('RETURN',)",
"packages": 9
},
{
"context": "('get', 'get')",
"packages": 7
},
{ {
"context": "('RETURN', 'render_template')", "context": "('RETURN', 'render_template')",
"packages": 6
},
{
"context": "('LOOP', 'KW')",
"packages": 6
},
{
"context": "('IF', 'KW')",
"packages": 5 "packages": 5
}, },
{ {
"context": "('KW', 'FUN')", "context": "('RETURN', 'self')",
"packages": 5
},
{
"context": "('RETURN', 'app')",
"packages": 4 "packages": 4
}, },
{ {
"context": "('pop', 'pop')", "context": "('RETURN',)",
"packages": 4 "packages": 4
}, },
{ {
"context": "('setdefault', 'setdefault')", "context": "('app', 'Flask')",
"packages": 4 "packages": 3
},
{
"context": "('app', 'app_context')",
"packages": 3
}, },
{ {
"context": "('IF', 'isinstance')", "context": "('IF', 'isinstance')",
"packages": 4 "packages": 3
}, },
{ {
"context": "('Flask', 'Flask')", "context": "('self', 'app')",
"packages": 3
},
{
"context": "('EXCEPTION', 'NotImplementedError')",
"packages": 3
},
{
"context": "('RETURN', 'isinstance')",
"packages": 3 "packages": 3
} }
] ]
}, },
"k3": { "k3": {
"contexts": 529, "contexts": 699,
"sore_successes": 30, "sore_successes": 23,
"total_methods": 1391, "total_methods": 1424,
"methods_in_good": 400, "methods_in_good": 247,
"coverage": 28.8, "coverage": 17.3,
"cross_package_contexts": 47, "cross_package_contexts": 28,
"elapsed": 0.0, "elapsed": 0.001,
"top_groups": [ "top_groups": [
{ {
"context": "('RETURN',)", "context": "('RETURN',)",
"label": "coarsened_k3", "label": "coarsened_k3",
"methods": 234, "methods": 127,
"unique": 1, "unique": 1,
"unique_ratio": 0.004, "unique_ratio": 0.008,
"alphabet_size": 1, "alphabet_size": 1,
"sore": "RETURN", "sore": "RETURN",
"sore_success": true "sore_success": true
}, },
{ {
"context": "('IF', 'KW', 'KW')", "context": "('@', 'app', 'route')",
"label": "coarsened_k3", "label": "coarsened_k3",
"methods": 34, "methods": 44,
"unique": 29, "unique": 44,
"unique_ratio": 0.853, "unique_ratio": 1.0,
"alphabet_size": 73, "alphabet_size": 257,
"sore": null, "sore": null,
"sore_success": false "sore_success": false
}, },
{
"context": "('ATTR', 'ATTR', 'route')",
"label": "coarsened_k3",
"methods": 34,
"unique": 31,
"unique_ratio": 0.912,
"alphabet_size": 74,
"sore": null,
"sore_success": false
},
{
"context": "('RETURN', 'render_template', 'render_template')",
"label": "coarsened_k3",
"methods": 33,
"unique": 2,
"unique_ratio": 0.061,
"alphabet_size": 3,
"sore": null,
"sore_success": false
},
{
"context": "('append', 'append')",
"label": "coarsened_k3",
"methods": 33,
"unique": 1,
"unique_ratio": 0.03,
"alphabet_size": 1,
"sore": "(append)+",
"sore_success": true
},
{ {
"context": "('RETURN', 'isinstance', 'isinstance')", "context": "('RETURN', 'isinstance', 'isinstance')",
"label": "coarsened_k3", "label": "coarsened_k3",
"methods": 32, "methods": 32,
"unique": 2, "unique": 10,
"unique_ratio": 0.062, "unique_ratio": 0.312,
"alphabet_size": 6, "alphabet_size": 21,
"sore": null, "sore": null,
"sore_success": false "sore_success": false
}, },
{ {
"context": "('ATTR', 'ATTR', 'FUN')", "context": "('bp', 'flask', 'Blueprint')",
"label": "coarsened_k3", "label": "coarsened_k3",
"methods": 31, "methods": 31,
"unique": 28, "unique": 29,
"unique_ratio": 0.903, "unique_ratio": 0.935,
"alphabet_size": 92, "alphabet_size": 134,
"sore": null, "sore": null,
"sore_success": false "sore_success": false
}, },
{ {
"context": "('ATTR', 'route', 'route')", "context": "('RETURN', 'flask', 'request')",
"label": "coarsened_k3", "label": "coarsened_k3",
"methods": 24, "methods": 25,
"unique": 22, "unique": 8,
"unique_ratio": 0.917, "unique_ratio": 0.32,
"alphabet_size": 103, "alphabet_size": 12,
"sore": null, "sore": null,
"sore_success": false "sore_success": false
}, },
{ {
"context": "('EXCEPTION',)", "context": "('RETURN', 'flask', 'render_template')",
"label": "coarsened_k3", "label": "coarsened_k3",
"methods": 21, "methods": 25,
"unique": 4,
"unique_ratio": 0.16,
"alphabet_size": 8,
"sore": null,
"sore_success": false
},
{
"context": "('RETURN', 's')",
"label": "coarsened_k3",
"methods": 23,
"unique": 1, "unique": 1,
"unique_ratio": 0.048, "unique_ratio": 0.043,
"alphabet_size": 1, "alphabet_size": 2,
"sore": "EXCEPTION", "sore": "RETURN.s",
"sore_success": true "sore_success": true
}, },
{ {
"context": "('Blueprint', 'Blueprint', 'ATTR')", "context": "('app', 'flask', 'Flask')",
"label": "coarsened_k3", "label": "coarsened_k3",
"methods": 21, "methods": 18,
"unique": 20, "unique": 18,
"unique_ratio": 0.952, "unique_ratio": 1.0,
"alphabet_size": 76, "alphabet_size": 111,
"sore": null,
"sore_success": false
},
{
"context": "('flask', 'abort', 'abort')",
"label": "coarsened_k3",
"methods": 16,
"unique": 1,
"unique_ratio": 0.062,
"alphabet_size": 2,
"sore": "flask.(abort)+",
"sore_success": true
},
{
"context": "('isinstance', 'isinstance', 'isinstance')",
"label": "coarsened_k3",
"methods": 16,
"unique": 13,
"unique_ratio": 0.812,
"alphabet_size": 26,
"sore": null, "sore": null,
"sore_success": false "sore_success": false
} }
], ],
"cross_pkg_examples": [ "cross_pkg_examples": [
{
"context": "('RETURN',)",
"packages": 9
},
{ {
"context": "('RETURN', 'render_template', 'render_template')", "context": "('RETURN', 'render_template', 'render_template')",
"packages": 6 "packages": 5
}, },
{ {
"context": "('get', 'get', 'get')", "context": "('RETURN',)",
"packages": 4 "packages": 4
}, },
{ {
"context": "('IF', 'KW', 'RETURN')", "context": "('RETURN', 'app', 'test_client')",
"packages": 4 "packages": 3
}, },
{ {
"context": "('get', 'get', 'IF')", "context": "('app', 'Flask', 'Flask')",
"packages": 4 "packages": 3
}, },
{ {
"context": "('IF', 'KW', 'KW')", "context": "('app', 'app_context', 'app_context')",
"packages": 4 "packages": 3
}, },
{ {
"context": "('IF', 'isinstance', 'isinstance')", "context": "('IF', 'isinstance', 'isinstance')",
"packages": 4
},
{
"context": "('Flask', 'Flask', 'from_mapping')",
"packages": 3 "packages": 3
}, },
{ {
"context": "('RETURN', 'test_client', 'test_client')", "context": "('self', 'app', 'app')",
"packages": 3 "packages": 3
}, },
{ {
"context": "('RETURN', 'get', 'get')", "context": "('EXCEPTION', 'NotImplementedError', 'NotImplementedError')",
"packages": 3
},
{
"context": "('RETURN', 'isinstance', 'isinstance')",
"packages": 3
},
{
"context": "('kwargs', 'setdefault', 'setdefault')",
"packages": 3 "packages": 3
} }
] ]

View file

@ -1,7 +1,7 @@
{ {
"name": "RAGSAK", "name": "RAGSAK",
"raw": { "raw": {
"seq_count": 1594, "seq_count": 1609,
"alphabet_size": 1724, "alphabet_size": 1724,
"alphabet_sample": [ "alphabet_sample": [
"", "",
@ -38,7 +38,7 @@
"k1": { "k1": {
"contexts": 510, "contexts": 510,
"sore_successes": 39, "sore_successes": 39,
"total_methods": 1594, "total_methods": 1609,
"methods_in_good": 125, "methods_in_good": 125,
"coverage": 7.8, "coverage": 7.8,
"cross_package_contexts": 145, "cross_package_contexts": 145,
@ -74,6 +74,16 @@
"sore": null, "sore": null,
"sore_success": false "sore_success": false
}, },
{
"context": "('_eps',)",
"label": "raw_k1",
"methods": 31,
"unique": 1,
"unique_ratio": 0.032,
"alphabet_size": 0,
"sore": null,
"sore_success": false
},
{ {
"context": "('mockk',)", "context": "('mockk',)",
"label": "raw_k1", "label": "raw_k1",
@ -133,16 +143,6 @@
"alphabet_size": 73, "alphabet_size": 73,
"sore": null, "sore": null,
"sore_success": false "sore_success": false
},
{
"context": "('parse',)",
"label": "raw_k1",
"methods": 18,
"unique": 18,
"unique_ratio": 1.0,
"alphabet_size": 49,
"sore": null,
"sore_success": false
} }
], ],
"cross_pkg_examples": [ "cross_pkg_examples": [
@ -150,6 +150,10 @@
"context": "('every',)", "context": "('every',)",
"packages": 18 "packages": 18
}, },
{
"context": "('_eps',)",
"packages": 18
},
{ {
"context": "('builder',)", "context": "('builder',)",
"packages": 16 "packages": 16
@ -178,10 +182,6 @@
"context": "('isEmpty',)", "context": "('isEmpty',)",
"packages": 9 "packages": 9
}, },
{
"context": "('_eps',)",
"packages": 9
},
{ {
"context": "('debug',)", "context": "('debug',)",
"packages": 9 "packages": 9
@ -191,9 +191,9 @@
"k2": { "k2": {
"contexts": 918, "contexts": 918,
"sore_successes": 76, "sore_successes": 76,
"total_methods": 1594, "total_methods": 1609,
"methods_in_good": 249, "methods_in_good": 249,
"coverage": 15.6, "coverage": 15.5,
"cross_package_contexts": 100, "cross_package_contexts": 100,
"elapsed": 0.001, "elapsed": 0.001,
"top_groups": [ "top_groups": [
@ -207,6 +207,16 @@
"sore": null, "sore": null,
"sore_success": false "sore_success": false
}, },
{
"context": "('_eps',)",
"label": "raw_k2",
"methods": 31,
"unique": 1,
"unique_ratio": 0.032,
"alphabet_size": 0,
"sore": null,
"sore_success": false
},
{ {
"context": "('warn', 'status')", "context": "('warn', 'status')",
"label": "raw_k2", "label": "raw_k2",
@ -217,16 +227,6 @@
"sore": "warn.status.body.ErrorResponse", "sore": "warn.status.body.ErrorResponse",
"sore_success": true "sore_success": true
}, },
{
"context": "('_eps',)",
"label": "raw_k2",
"methods": 16,
"unique": 1,
"unique_ratio": 0.062,
"alphabet_size": 0,
"sore": null,
"sore_success": false
},
{ {
"context": "('VectorChunk', 'mapOf')", "context": "('VectorChunk', 'mapOf')",
"label": "raw_k2", "label": "raw_k2",
@ -300,12 +300,12 @@
], ],
"cross_pkg_examples": [ "cross_pkg_examples": [
{ {
"context": "('listOf', 'listOf')", "context": "('_eps',)",
"packages": 13 "packages": 18
}, },
{ {
"context": "('_eps',)", "context": "('listOf', 'listOf')",
"packages": 9 "packages": 13
}, },
{ {
"context": "('trim', 'lowercase')", "context": "('trim', 'lowercase')",
@ -344,12 +344,22 @@
"k3": { "k3": {
"contexts": 1066, "contexts": 1066,
"sore_successes": 89, "sore_successes": 89,
"total_methods": 1594, "total_methods": 1609,
"methods_in_good": 297, "methods_in_good": 297,
"coverage": 18.6, "coverage": 18.5,
"cross_package_contexts": 69, "cross_package_contexts": 69,
"elapsed": 0.0, "elapsed": 0.001,
"top_groups": [ "top_groups": [
{
"context": "('_eps',)",
"label": "raw_k3",
"methods": 31,
"unique": 1,
"unique_ratio": 0.032,
"alphabet_size": 0,
"sore": null,
"sore_success": false
},
{ {
"context": "('warn', 'status', 'body')", "context": "('warn', 'status', 'body')",
"label": "raw_k3", "label": "raw_k3",
@ -360,16 +370,6 @@
"sore": "warn.status.body.ErrorResponse", "sore": "warn.status.body.ErrorResponse",
"sore_success": true "sore_success": true
}, },
{
"context": "('_eps',)",
"label": "raw_k3",
"methods": 16,
"unique": 1,
"unique_ratio": 0.062,
"alphabet_size": 0,
"sore": null,
"sore_success": false
},
{ {
"context": "('VectorChunk', 'mapOf', 'mapOf')", "context": "('VectorChunk', 'mapOf', 'mapOf')",
"label": "raw_k3", "label": "raw_k3",
@ -441,20 +441,20 @@
"sore_success": true "sore_success": true
}, },
{ {
"context": "('assertEquals', 'of', 'assertFailsWith')", "context": "('of',)",
"label": "raw_k3", "label": "raw_k3",
"methods": 7, "methods": 7,
"unique": 3, "unique": 1,
"unique_ratio": 0.429, "unique_ratio": 0.143,
"alphabet_size": 3, "alphabet_size": 1,
"sore": "assertEquals.(of.(assertFailsWith)?)+", "sore": "of",
"sore_success": true "sore_success": true
} }
], ],
"cross_pkg_examples": [ "cross_pkg_examples": [
{ {
"context": "('_eps',)", "context": "('_eps',)",
"packages": 9 "packages": 18
}, },
{ {
"context": "('defaultCapabilityId',)", "context": "('defaultCapabilityId',)",
@ -496,66 +496,76 @@
} }
}, },
"coarsened": { "coarsened": {
"seq_count": 1594, "seq_count": 1609,
"alphabet_size": 1728, "alphabet_size": 2468,
"alphabet_sample": [ "alphabet_sample": [
"", "",
"\" }",
"\"Cann", "\"Cann",
"\"Fail", "\"Fail",
"\"k", "\"k",
"\"una",
"(", "(",
"(\"", "(\"",
"()", "()",
"(documen", "(documen",
"(val scores: List<Double> = emptyList())", "(val scores: List<Double> = emptyList())",
")",
") && s3", ") && s3",
") return",
")) {", ")) {",
",", ",",
".con",
".end",
".jo", ".jo",
".lin",
".mapInde",
".size).t",
".va", ".va",
"ATTR", ": 0",
"Acti", "==",
"AgentCapabilityDescriptor", "> 5",
"AgentDecision", "?.na",
"AgentExecutionContext", "?:",
"AndServerWebExchangeMatcher", "@",
"Any", "ABANDONED"
"AssertionError",
"AssistantMessage",
"AtomicLong",
"AtomicReference",
"AuthController",
"BCryptPasswordEncoder",
"BatchId",
"BatchJobController",
"BatchJobListener"
], ],
"k1": { "k1": {
"contexts": 474, "contexts": 476,
"sore_successes": 33, "sore_successes": 16,
"total_methods": 1594, "total_methods": 1609,
"methods_in_good": 107, "methods_in_good": 51,
"coverage": 6.7, "coverage": 3.2,
"cross_package_contexts": 128, "cross_package_contexts": 123,
"elapsed": 0.0, "elapsed": 0.0,
"top_groups": [ "top_groups": [
{
"context": "('IF',)",
"label": "coarsened_k1",
"methods": 104,
"unique": 98,
"unique_ratio": 0.942,
"alphabet_size": 463,
"sore": null,
"sore_success": false
},
{ {
"context": "('every',)", "context": "('every',)",
"label": "coarsened_k1", "label": "coarsened_k1",
"methods": 102, "methods": 102,
"unique": 93, "unique": 95,
"unique_ratio": 0.912, "unique_ratio": 0.931,
"alphabet_size": 232, "alphabet_size": 304,
"sore": null, "sore": null,
"sore_success": false "sore_success": false
}, },
{ {
"context": "('RETURN',)", "context": "('RETURN',)",
"label": "coarsened_k1", "label": "coarsened_k1",
"methods": 91, "methods": 61,
"unique": 75, "unique": 51,
"unique_ratio": 0.824, "unique_ratio": 0.836,
"alphabet_size": 186, "alphabet_size": 210,
"sore": null, "sore": null,
"sore_success": false "sore_success": false
}, },
@ -565,27 +575,27 @@
"methods": 59, "methods": 59,
"unique": 54, "unique": 54,
"unique_ratio": 0.915, "unique_ratio": 0.915,
"alphabet_size": 131, "alphabet_size": 171,
"sore": null, "sore": null,
"sore_success": false "sore_success": false
}, },
{ {
"context": "('listOf',)", "context": "('listOf',)",
"label": "coarsened_k1", "label": "coarsened_k1",
"methods": 36, "methods": 33,
"unique": 27, "unique": 25,
"unique_ratio": 0.75, "unique_ratio": 0.758,
"alphabet_size": 95, "alphabet_size": 111,
"sore": null, "sore": null,
"sore_success": false "sore_success": false
}, },
{ {
"context": "('mockk',)", "context": "('mockk',)",
"label": "coarsened_k1", "label": "coarsened_k1",
"methods": 31, "methods": 30,
"unique": 21, "unique": 20,
"unique_ratio": 0.677, "unique_ratio": 0.667,
"alphabet_size": 100, "alphabet_size": 129,
"sore": null, "sore": null,
"sore_success": false "sore_success": false
}, },
@ -595,55 +605,49 @@
"methods": 29, "methods": 29,
"unique": 28, "unique": 28,
"unique_ratio": 0.966, "unique_ratio": 0.966,
"alphabet_size": 117, "alphabet_size": 165,
"sore": null,
"sore_success": false
},
{
"context": "('trim',)",
"label": "coarsened_k1",
"methods": 26,
"unique": 23,
"unique_ratio": 0.885,
"alphabet_size": 57,
"sore": null,
"sore_success": false
},
{
"context": "('warn',)",
"label": "coarsened_k1",
"methods": 26,
"unique": 4,
"unique_ratio": 0.154,
"alphabet_size": 11,
"sore": null, "sore": null,
"sore_success": false "sore_success": false
}, },
{ {
"context": "('builder',)", "context": "('builder',)",
"label": "coarsened_k1", "label": "coarsened_k1",
"methods": 24, "methods": 23,
"unique": 23, "unique": 23,
"unique_ratio": 0.958, "unique_ratio": 1.0,
"alphabet_size": 126, "alphabet_size": 164,
"sore": null,
"sore_success": false
},
{
"context": "('warn',)",
"label": "coarsened_k1",
"methods": 23,
"unique": 14,
"unique_ratio": 0.609,
"alphabet_size": 23,
"sore": null, "sore": null,
"sore_success": false "sore_success": false
}, },
{ {
"context": "('info',)", "context": "('info',)",
"label": "coarsened_k1", "label": "coarsened_k1",
"methods": 23, "methods": 19,
"unique": 19, "unique": 15,
"unique_ratio": 0.826, "unique_ratio": 0.789,
"alphabet_size": 74, "alphabet_size": 88,
"sore": null, "sore": null,
"sore_success": false "sore_success": false
} }
], ],
"cross_pkg_examples": [ "cross_pkg_examples": [
{
"context": "('IF',)",
"packages": 34
},
{ {
"context": "('RETURN',)", "context": "('RETURN',)",
"packages": 36 "packages": 26
}, },
{ {
"context": "('every',)", "context": "('every',)",
@ -657,70 +661,96 @@
"context": "('runTest',)", "context": "('runTest',)",
"packages": 12 "packages": 12
}, },
{
"context": "('listOf',)",
"packages": 12
},
{
"context": "('info',)",
"packages": 11
},
{ {
"context": "('mockk',)", "context": "('mockk',)",
"packages": 11 "packages": 11
}, },
{ {
"context": "('trim',)", "context": "('listOf',)",
"packages": 11
},
{
"context": "('info',)",
"packages": 10 "packages": 10
}, },
{ {
"context": "('isEmpty',)", "context": "('get',)",
"packages": 9 "packages": 8
}, },
{ {
"context": "('debug',)", "context": "('debug',)",
"packages": 9 "packages": 8
} }
] ]
}, },
"k2": { "k2": {
"contexts": 883, "contexts": 782,
"sore_successes": 69, "sore_successes": 25,
"total_methods": 1594, "total_methods": 1609,
"methods_in_good": 225, "methods_in_good": 82,
"coverage": 14.1, "coverage": 5.1,
"cross_package_contexts": 108, "cross_package_contexts": 123,
"elapsed": 0.001, "elapsed": 0.001,
"top_groups": [ "top_groups": [
{ {
"context": "('listOf', 'listOf')", "context": "('listOf', 'listOf')",
"label": "coarsened_k2", "label": "coarsened_k2",
"methods": 36, "methods": 33,
"unique": 27, "unique": 25,
"unique_ratio": 0.75, "unique_ratio": 0.758,
"alphabet_size": 95, "alphabet_size": 111,
"sore": null, "sore": null,
"sore_success": false "sore_success": false
}, },
{ {
"context": "('warn', 'RETURN')", "context": "('builder', 'builder')",
"label": "coarsened_k2", "label": "coarsened_k2",
"methods": 23, "methods": 23,
"unique": 2, "unique": 23,
"unique_ratio": 0.087, "unique_ratio": 1.0,
"alphabet_size": 7, "alphabet_size": 164,
"sore": null, "sore": null,
"sore_success": false "sore_success": false
}, },
{ {
"context": "('RETURN',)", "context": "('warn', 'warn')",
"label": "coarsened_k2", "label": "coarsened_k2",
"methods": 13, "methods": 23,
"unique": 1, "unique": 14,
"unique_ratio": 0.077, "unique_ratio": 0.609,
"alphabet_size": 1, "alphabet_size": 23,
"sore": "RETURN", "sore": null,
"sore_success": true "sore_success": false
},
{
"context": "('info', 'info')",
"label": "coarsened_k2",
"methods": 19,
"unique": 15,
"unique_ratio": 0.789,
"alphabet_size": 88,
"sore": null,
"sore_success": false
},
{
"context": "('parse', 'parse')",
"label": "coarsened_k2",
"methods": 18,
"unique": 18,
"unique_ratio": 1.0,
"alphabet_size": 70,
"sore": null,
"sore_success": false
},
{
"context": "('trim', 'trim')",
"label": "coarsened_k2",
"methods": 15,
"unique": 15,
"unique_ratio": 1.0,
"alphabet_size": 54,
"sore": null,
"sore_success": false
}, },
{ {
"context": "('VectorChunk', 'mapOf')", "context": "('VectorChunk', 'mapOf')",
@ -728,7 +758,7 @@
"methods": 13, "methods": 13,
"unique": 11, "unique": 11,
"unique_ratio": 0.846, "unique_ratio": 0.846,
"alphabet_size": 42, "alphabet_size": 57,
"sore": null, "sore": null,
"sore_success": false "sore_success": false
}, },
@ -738,7 +768,17 @@
"methods": 13, "methods": 13,
"unique": 5, "unique": 5,
"unique_ratio": 0.385, "unique_ratio": 0.385,
"alphabet_size": 13, "alphabet_size": 19,
"sore": null,
"sore_success": false
},
{
"context": "('of', 'of')",
"label": "coarsened_k2",
"methods": 13,
"unique": 7,
"unique_ratio": 0.538,
"alphabet_size": 40,
"sore": null, "sore": null,
"sore_success": false "sore_success": false
}, },
@ -748,122 +788,72 @@
"methods": 13, "methods": 13,
"unique": 13, "unique": 13,
"unique_ratio": 1.0, "unique_ratio": 1.0,
"alphabet_size": 16, "alphabet_size": 28,
"sore": null,
"sore_success": false
},
{
"context": "('isEmpty', 'RETURN')",
"label": "coarsened_k2",
"methods": 12,
"unique": 12,
"unique_ratio": 1.0,
"alphabet_size": 59,
"sore": null,
"sore_success": false
},
{
"context": "('mockk',)",
"label": "coarsened_k2",
"methods": 11,
"unique": 1,
"unique_ratio": 0.091,
"alphabet_size": 1,
"sore": "mockk",
"sore_success": true
},
{
"context": "('filesIn', 'assertTrue')",
"label": "coarsened_k2",
"methods": 11,
"unique": 5,
"unique_ratio": 0.455,
"alphabet_size": 4,
"sore": null,
"sore_success": false
},
{
"context": "('RETURN', 'RETURN')",
"label": "coarsened_k2",
"methods": 10,
"unique": 10,
"unique_ratio": 1.0,
"alphabet_size": 15,
"sore": null, "sore": null,
"sore_success": false "sore_success": false
} }
], ],
"cross_pkg_examples": [ "cross_pkg_examples": [
{
"context": "('builder', 'builder')",
"packages": 15
},
{ {
"context": "('listOf', 'listOf')", "context": "('listOf', 'listOf')",
"packages": 12 "packages": 11
}, },
{ {
"context": "('isEmpty', 'RETURN')", "context": "('info', 'info')",
"packages": 9 "packages": 10
}, },
{ {
"context": "('RETURN',)", "context": "('IF', 'isEmpty')",
"packages": 9 "packages": 8
}, },
{ {
"context": "('RETURN', 'RETURN')", "context": "('IF', 'RETURN')",
"packages": 8
},
{
"context": "('get', 'get')",
"packages": 8
},
{
"context": "('debug', 'debug')",
"packages": 8
},
{
"context": "('trim', 'trim')",
"packages": 7 "packages": 7
}, },
{ {
"context": "('trim', 'lowercase')", "context": "('IF', 'isNullOrBlank')",
"packages": 5 "packages": 6
}, },
{ {
"context": "('mutableListOf', 'mutableListOf')", "context": "('run', 'run')",
"packages": 5 "packages": 6
},
{
"context": "('defaultCapabilityId',)",
"packages": 4
},
{
"context": "('every', 'defaultCapabilityId')",
"packages": 4
},
{
"context": "('clearAllMocks',)",
"packages": 4
},
{
"context": "('VectorChunk', 'mapOf')",
"packages": 4
} }
] ]
}, },
"k3": { "k3": {
"contexts": 1062, "contexts": 992,
"sore_successes": 82, "sore_successes": 29,
"total_methods": 1594, "total_methods": 1609,
"methods_in_good": 292, "methods_in_good": 97,
"coverage": 18.3, "coverage": 6.0,
"cross_package_contexts": 74, "cross_package_contexts": 87,
"elapsed": 0.0, "elapsed": 0.001,
"top_groups": [ "top_groups": [
{ {
"context": "('warn', 'RETURN', 'status')", "context": "('warn', 'warn', 'message')",
"label": "coarsened_k3", "label": "coarsened_k3",
"methods": 22, "methods": 20,
"unique": 1, "unique": 11,
"unique_ratio": 0.045, "unique_ratio": 0.55,
"alphabet_size": 5, "alphabet_size": 13,
"sore": "warn.RETURN.status.body.ErrorResponse", "sore": null,
"sore_success": true "sore_success": false
},
{
"context": "('RETURN',)",
"label": "coarsened_k3",
"methods": 13,
"unique": 1,
"unique_ratio": 0.077,
"alphabet_size": 1,
"sore": "RETURN",
"sore_success": true
}, },
{ {
"context": "('VectorChunk', 'mapOf', 'mapOf')", "context": "('VectorChunk', 'mapOf', 'mapOf')",
@ -871,19 +861,29 @@
"methods": 13, "methods": 13,
"unique": 11, "unique": 11,
"unique_ratio": 0.846, "unique_ratio": 0.846,
"alphabet_size": 42, "alphabet_size": 57,
"sore": null, "sore": null,
"sore_success": false "sore_success": false
}, },
{ {
"context": "('ery {', 'stKnowledgeBases()', 'gRequest(m')", "context": "('ery {', 'stKnowledgeBases()', 'stKnowledgeBases()')",
"label": "coarsened_k3", "label": "coarsened_k3",
"methods": 12, "methods": 13,
"unique": 4, "unique": 5,
"unique_ratio": 0.333, "unique_ratio": 0.385,
"alphabet_size": 11, "alphabet_size": 19,
"sore": "ery {.stKnowledgeBases().gRequest(m.(ckKnowledgeBase(re.ertEquals(Kn.\"k|eckKnowledgeBase(r.(sertEquals(K.(\"|(sertEquals(t|sertNull(o)))", "sore": null,
"sore_success": true "sore_success": false
},
{
"context": "('productionClasses', 'filter', 'filter')",
"label": "coarsened_k3",
"methods": 13,
"unique": 13,
"unique_ratio": 1.0,
"alphabet_size": 28,
"sore": null,
"sore_success": false
}, },
{ {
"context": "('listOf', 'listOf', 'productionFiles')", "context": "('listOf', 'listOf', 'productionFiles')",
@ -891,7 +891,17 @@
"methods": 12, "methods": 12,
"unique": 6, "unique": 6,
"unique_ratio": 0.5, "unique_ratio": 0.5,
"alphabet_size": 9, "alphabet_size": 13,
"sore": null,
"sore_success": false
},
{
"context": "('IF', 'isEmpty', 'isEmpty')",
"label": "coarsened_k3",
"methods": 11,
"unique": 11,
"unique_ratio": 1.0,
"alphabet_size": 69,
"sore": null, "sore": null,
"sore_success": false "sore_success": false
}, },
@ -906,53 +916,51 @@
"sore_success": true "sore_success": true
}, },
{ {
"context": "('parseStorageUri', 'RETURN', 'RETURN')", "context": "('filesIn', 'assertTrue', 'assertTrue')",
"label": "coarsened_k3", "label": "coarsened_k3",
"methods": 8, "methods": 11,
"unique": 5, "unique": 5,
"unique_ratio": 0.625, "unique_ratio": 0.455,
"alphabet_size": 14, "alphabet_size": 5,
"sore": null, "sore": null,
"sore_success": false "sore_success": false
}, },
{ {
"context": "('File', 'writeBytes', 'byteArrayOf')", "context": "('IF', 'isNullOrBlank', 'isNullOrBlank')",
"label": "coarsened_k3", "label": "coarsened_k3",
"methods": 8, "methods": 9,
"unique": 7, "unique": 7,
"unique_ratio": 0.875, "unique_ratio": 0.778,
"alphabet_size": 25, "alphabet_size": 49,
"sore": null, "sore": null,
"sore_success": false "sore_success": false
}, },
{ {
"context": "('runTest', 'ChatResponse', 'emptyList')", "context": "('parseStorageUri', 'value', 'RETURN')",
"label": "coarsened_k3", "label": "coarsened_k3",
"methods": 7, "methods": 9,
"unique": 7, "unique": 6,
"unique_ratio": 1.0, "unique_ratio": 0.667,
"alphabet_size": 33, "alphabet_size": 20,
"sore": null, "sore": null,
"sore_success": false "sore_success": false
},
{
"context": "('filesIn', 'assertTrue', 'hasImport')",
"label": "coarsened_k3",
"methods": 7,
"unique": 2,
"unique_ratio": 0.286,
"alphabet_size": 3,
"sore": "filesIn.assertTrue.(hasImport)+",
"sore_success": true
} }
], ],
"cross_pkg_examples": [ "cross_pkg_examples": [
{ {
"context": "('RETURN',)", "context": "('IF', 'isEmpty', 'isEmpty')",
"packages": 9 "packages": 8
}, },
{ {
"context": "('defaultCapabilityId',)", "context": "('IF', 'isNullOrBlank', 'isNullOrBlank')",
"packages": 6
},
{
"context": "('IF', 'isBlank', 'isBlank')",
"packages": 5
},
{
"context": "('every', 'defaultCapabilityId', 'defaultCapabilityId')",
"packages": 4 "packages": 4
}, },
{ {
@ -972,19 +980,11 @@
"packages": 4 "packages": 4
}, },
{ {
"context": "('get',)", "context": "('get', 'get')",
"packages": 4 "packages": 4
}, },
{ {
"context": "('registerProperties',)", "context": "('registerProperties', 'registerProperties')",
"packages": 4
},
{
"context": "('assumeTrue', 'isDockerAvailable', 'start')",
"packages": 4
},
{
"context": "('listOf', 'listOf', 'forEach')",
"packages": 4 "packages": 4
} }
] ]