feature/treesitter-tag-queries #2
68 changed files with 48509 additions and 151 deletions
28
TODO_GBNF_OUTPUT.md
Normal file
28
TODO_GBNF_OUTPUT.md
Normal file
|
|
@ -0,0 +1,28 @@
|
|||
# TODO: GBNF Output Format
|
||||
|
||||
When grammars are finalized, output them in GBNF (GGML BNF) format for compatibility with llama.cpp and other inference engines.
|
||||
|
||||
GBNF is a BNF-like grammar format used by llama.cpp for constrained decoding. It supports:
|
||||
- Sequences: `rule ::= token1 token2`
|
||||
- Alternatives: `rule ::= alt1 | alt2`
|
||||
- Optional: `rule ::= (token)?`
|
||||
- Repetition: `rule ::= (token)*`
|
||||
- Character classes: `[a-z]`, `[^abc]`
|
||||
|
||||
Example GBNF:
|
||||
```
|
||||
root ::= ws? item ws?
|
||||
item ::= identifier ws? "(" ws? args? ws? ")"
|
||||
args ::= identifier (ws? "," ws? identifier)*
|
||||
identifier ::= [a-zA-Z_][a-zA-Z0-9_]*
|
||||
ws ::= [ \t\n]*
|
||||
```
|
||||
|
||||
Map SORE operators to GBNF:
|
||||
- `r·s` (concatenation) → `rule ::= r s`
|
||||
- `r|s` (disjunction) → `rule ::= r | s`
|
||||
- `r*` (star) → `rule ::= (r)*`
|
||||
- `r?` (optional) → `rule ::= (r)?`
|
||||
- `r+` (plus) → `rule ::= r (r)*`
|
||||
|
||||
Implementation: Add `to_gbnf(sore)` function to `bex/` when ready.
|
||||
|
|
@ -24,5 +24,6 @@ from .marking import mark_koa
|
|||
from .tokenizer import YAMLTokenizer
|
||||
from .ensemble import infer_ensemble
|
||||
from .template import generate_template
|
||||
from .reduce import reduce_contexts, soa_distance, build_soa_with_support, minimize_contexts, reduce_and_infer
|
||||
|
||||
__version__ = "0.2.0"
|
||||
|
|
|
|||
408
bex/reduce.py
Normal file
408
bex/reduce.py
Normal file
|
|
@ -0,0 +1,408 @@
|
|||
"""Reduce — Algorithm 4 (TODS 2010).
|
||||
|
||||
Paper: Bex et al. "Inference of Concise Regular Expressions and DTDs"
|
||||
ACM Transactions on Database Systems, 2010. Section 5.
|
||||
|
||||
When iLocal runs on an incomplete corpus, it may infer separate types for what is
|
||||
actually the same type in the target schema. Reduce fixes this by measuring
|
||||
similarity between inferred types and merging those that are close enough.
|
||||
|
||||
Key definitions:
|
||||
|
||||
dist(A, B) — SOA edit distance (Definition 14):
|
||||
dist(A, B) = (∑_{(a,b)∈E-F} suppA(a,b) / ∑_{(a,b)∈E} suppA(a,b))
|
||||
+ (∑_{(a,b)∈F-E} suppB(a,b) / ∑_{(a,b)∈F} suppB(a,b))
|
||||
|
||||
distD(s, t) — type distance in inferred XSD D (Definition 15):
|
||||
distD(s, t) = max_{(s',t')∈reachD(s,t)} dist(soa(s'), soa(t'))
|
||||
|
||||
Adjunction A ∪ B — merge SOAs by unioning edges, summing support:
|
||||
supp_{A∪B}(a,b) = supp_A(a,b) + supp_B(a,b)
|
||||
|
||||
ToSore(SOA) — convert SOA to SORE (Algorithm 6: RWR₀)
|
||||
Minimize(D, r) — unify equivalent types in XSD D
|
||||
|
||||
For our use case (flat sequences, no XSD type hierarchy):
|
||||
- "types" are context groupings (context_key -> sequences)
|
||||
- reachD(s, t) = {(s, t)} (no hierarchy, so distD = dist)
|
||||
- elemsD(t) = ∅ (no child elements, so lines 8-11 are no-ops)
|
||||
- ToSore = rwr0 (our REWRITE implementation)
|
||||
- Minimize = merge contexts with identical SOREs
|
||||
|
||||
Important: SOA state IDs are not comparable across different SOAs.
|
||||
We compare labeled transitions (symbol pairs) instead of state ID pairs.
|
||||
"""
|
||||
|
||||
from collections import defaultdict
|
||||
from itertools import combinations
|
||||
|
||||
from .soa import SOA
|
||||
from .twotinf import build_soa
|
||||
from .rwr0 import rwr0
|
||||
|
||||
|
||||
def _labeled_transitions(soa):
|
||||
"""Extract labeled transitions from SOA.
|
||||
|
||||
Returns a dict mapping (from_label, to_label) -> set of state pairs.
|
||||
Labels are: None for src/sink, symbol string for other states.
|
||||
We use ('SRC',) for src and ('SINK',) for sink to make them distinguishable.
|
||||
"""
|
||||
transitions = defaultdict(set)
|
||||
for f, targets in soa._succ.items():
|
||||
for t in targets:
|
||||
# Get labels: src -> ('SRC',), sink -> ('SINK',), others -> symbol
|
||||
if f == soa.src:
|
||||
f_label = ('SRC',)
|
||||
elif f == soa.sink:
|
||||
f_label = ('SINK',)
|
||||
else:
|
||||
f_label = (soa.label(f),)
|
||||
|
||||
if t == soa.src:
|
||||
t_label = ('SRC',)
|
||||
elif t == soa.sink:
|
||||
t_label = ('SINK',)
|
||||
else:
|
||||
t_label = (soa.label(t),)
|
||||
|
||||
transitions[(f_label, t_label)].add((f, t))
|
||||
return dict(transitions)
|
||||
|
||||
|
||||
def build_soa_with_support(sequences):
|
||||
"""Build a SOA with support annotations.
|
||||
|
||||
For each edge (a, b), track suppA(a, b) = number of strings in S
|
||||
for which (a, b) needed to be added to the edges of A.
|
||||
|
||||
Args:
|
||||
sequences: list of lists of symbols
|
||||
|
||||
Returns:
|
||||
(SOA, support_dict) where support_dict maps (from_label, to_label) -> count
|
||||
"""
|
||||
G = SOA()
|
||||
# Support keyed by labeled transitions, not state IDs
|
||||
support = {}
|
||||
symbol_states = {}
|
||||
|
||||
for seq in sequences:
|
||||
if not seq:
|
||||
if not G.has_edge(G.src, G.sink):
|
||||
G.add_edge(G.src, G.sink)
|
||||
key = (('SRC',), ('SINK',))
|
||||
support[key] = support.get(key, 0) + 1
|
||||
continue
|
||||
for i, token in enumerate(seq):
|
||||
if token not in symbol_states:
|
||||
symbol_states[token] = G.add_state(token)
|
||||
if i == 0:
|
||||
if not G.has_edge(G.src, symbol_states[token]):
|
||||
G.add_edge(G.src, symbol_states[token])
|
||||
key = (('SRC',), (token,))
|
||||
support[key] = support.get(key, 0) + 1
|
||||
if i == len(seq) - 1:
|
||||
if not G.has_edge(symbol_states[token], G.sink):
|
||||
G.add_edge(symbol_states[token], G.sink)
|
||||
key = ((token,), ('SINK',))
|
||||
support[key] = support.get(key, 0) + 1
|
||||
if i + 1 < len(seq):
|
||||
nxt = seq[i + 1]
|
||||
if nxt not in symbol_states:
|
||||
symbol_states[nxt] = G.add_state(nxt)
|
||||
if not G.has_edge(symbol_states[token], symbol_states[nxt]):
|
||||
G.add_edge(symbol_states[token], symbol_states[nxt])
|
||||
key = ((token,), (nxt,))
|
||||
support[key] = support.get(key, 0) + 1
|
||||
|
||||
return G, support
|
||||
|
||||
|
||||
def soa_distance(supp_a, supp_b):
|
||||
"""SOA edit distance (Definition 14, TODS 2010).
|
||||
|
||||
dist(A, B) = (∑_{(a,b)∈E-F} suppA(a,b) / ∑_{(a,b)∈E} suppA(a,b))
|
||||
+ (∑_{(a,b)∈F-E} suppB(a,b) / ∑_{(a,b)∈F} suppB(a,b))
|
||||
|
||||
Support-weighted: edges that appear in many strings contribute more.
|
||||
dist = 0 means the SOAs accept the same language.
|
||||
|
||||
Args:
|
||||
supp_a: Support dict for SOA A, maps (from_label, to_label) -> count
|
||||
supp_b: Support dict for SOA B, maps (from_label, to_label) -> count
|
||||
|
||||
Returns:
|
||||
Float in [0, 1]. 0 = identical, 1 = completely disjoint.
|
||||
"""
|
||||
edges_a = frozenset(supp_a.keys())
|
||||
edges_b = frozenset(supp_b.keys())
|
||||
|
||||
if not edges_a and not edges_b:
|
||||
return 0.0
|
||||
|
||||
total_a = sum(supp_a.values())
|
||||
total_b = sum(supp_b.values())
|
||||
|
||||
if total_a == 0 and total_b == 0:
|
||||
return 0.0
|
||||
|
||||
# ∑_{(a,b)∈E-F} suppA(a,b) / ∑_{(a,b)∈E} suppA(a,b)
|
||||
only_a = sum(supp_a[e] for e in (edges_a - edges_b))
|
||||
dist_a = only_a / total_a if total_a > 0 else 0
|
||||
|
||||
# ∑_{(a,b)∈F-E} suppB(a,b) / ∑_{(a,b)∈F} suppB(a,b)
|
||||
only_b = sum(supp_b[e] for e in (edges_b - edges_a))
|
||||
dist_b = only_b / total_b if total_b > 0 else 0
|
||||
|
||||
return dist_a + dist_b
|
||||
|
||||
|
||||
def adjunct_support(supp_a, supp_b):
|
||||
"""Adjunction of support-annotated SOAs (line 6, Algorithm 4).
|
||||
|
||||
supp_{A∪B}(a, b) = supp_A(a, b) + supp_B(a, b)
|
||||
(assuming supp_A(a, b) = 0 if (a,b) ∉ E_A, and similarly for B)
|
||||
"""
|
||||
combined = dict(supp_a)
|
||||
for edge, count in supp_b.items():
|
||||
combined[edge] = combined.get(edge, 0) + count
|
||||
return combined
|
||||
|
||||
|
||||
def reduce_contexts(contexts, threshold):
|
||||
"""Reduce algorithm for context groupings (Algorithm 4, TODS 2010).
|
||||
|
||||
Faithful implementation of Algorithm 4, adapted for flat sequences
|
||||
(no XSD type hierarchy):
|
||||
|
||||
Line 1: let (T, ρ, τ) = D
|
||||
T = set of context keys
|
||||
ρ(context) = SORE (built from sequences)
|
||||
τ = ∅ (no type hierarchy for flat contexts)
|
||||
|
||||
Line 2: M := {(s, t) ∈ T² | 0 < distD(s, t) < ε}
|
||||
For flat contexts: distD(s, t) = dist(soa(s), soa(t))
|
||||
|
||||
Lines 3-12: while M is non-empty
|
||||
For each (s, t) ∈ M:
|
||||
Line 6: soa(s) := soa(s) ∪ soa(t) [adjunction]
|
||||
Line 7: soa(t) := soa(s)
|
||||
Lines 8-11: copy elems (no-op: elemsD = ∅)
|
||||
Line 12: recompute M
|
||||
|
||||
Lines 13-14: for each t, replace ρ(t) by ToSore(soa(t))
|
||||
ToSore = rwr0 (our REWRITE implementation)
|
||||
|
||||
Line 15: Minimize(D, r)
|
||||
Merge contexts with identical SOREs
|
||||
|
||||
Args:
|
||||
contexts: dict mapping context_key -> list of sequences
|
||||
threshold: similarity threshold ε in [0, 1]
|
||||
- 0.05: very conservative
|
||||
- 0.15: moderate (Bex's recommended starting point)
|
||||
- 0.30: aggressive
|
||||
|
||||
Returns:
|
||||
(merged_contexts, merge_info)
|
||||
"""
|
||||
# Line 1: Build support-annotated SOAs for contexts with >= 2 sequences
|
||||
ctx_data = {} # ctx -> (soa, support_dict, sequences)
|
||||
for ctx, seqs in contexts.items():
|
||||
if len(seqs) >= 2:
|
||||
soa, supp = build_soa_with_support(seqs)
|
||||
ctx_data[ctx] = (soa, supp, seqs)
|
||||
|
||||
ctx_list = list(ctx_data.keys())
|
||||
merge_log = []
|
||||
total_comparisons = 0
|
||||
iteration = 0
|
||||
|
||||
# Lines 3-12: while M is non-empty
|
||||
while True:
|
||||
iteration += 1
|
||||
|
||||
# Line 2: M := {(s, t) ∈ T² | 0 < distD(s, t) < ε}
|
||||
M = []
|
||||
for i in range(len(ctx_list)):
|
||||
for j in range(i + 1, len(ctx_list)):
|
||||
ctx_a, ctx_b = ctx_list[i], ctx_list[j]
|
||||
if ctx_a not in ctx_data or ctx_b not in ctx_data:
|
||||
continue
|
||||
|
||||
_, supp_a, _ = ctx_data[ctx_a]
|
||||
_, supp_b, _ = ctx_data[ctx_b]
|
||||
|
||||
total_comparisons += 1
|
||||
dist = soa_distance(supp_a, supp_b)
|
||||
|
||||
if 0 < dist < threshold:
|
||||
M.append((ctx_a, ctx_b, dist))
|
||||
|
||||
# Line 3: while M is non-empty
|
||||
if not M:
|
||||
break
|
||||
|
||||
# Line 4: for each (s, t) ∈ M
|
||||
for ctx_a, ctx_b, dist in M:
|
||||
if ctx_a not in ctx_data or ctx_b not in ctx_data:
|
||||
continue # Already merged in this iteration
|
||||
|
||||
_, supp_a, seqs_a = ctx_data[ctx_a]
|
||||
_, supp_b, seqs_b = ctx_data[ctx_b]
|
||||
|
||||
# Line 6: soa(s) := soa(s) ∪ soa(t) [adjunction]
|
||||
combined_supp = adjunct_support(supp_a, supp_b)
|
||||
|
||||
# Merge sequences (equivalent to adjunction for SOA building)
|
||||
merged_seqs = seqs_a + seqs_b
|
||||
|
||||
# Rebuild SOA from merged sequences
|
||||
new_soa, new_supp = build_soa_with_support(merged_seqs)
|
||||
|
||||
# Line 7: soa(t) := soa(s)
|
||||
ctx_data[ctx_a] = (new_soa, new_supp, merged_seqs)
|
||||
del ctx_data[ctx_b]
|
||||
|
||||
merge_log.append({
|
||||
"iteration": iteration,
|
||||
"merged_into": str(ctx_a),
|
||||
"removed": str(ctx_b),
|
||||
"distance": round(dist, 4),
|
||||
"new_size": len(merged_seqs),
|
||||
})
|
||||
|
||||
# Line 12: recompute M (loop continues)
|
||||
|
||||
# Lines 13-14: for each type t, replace ρ(t) by ToSore(soa(t))
|
||||
# This happens implicitly when we infer SOREs later
|
||||
|
||||
# Build final merged contexts dict
|
||||
merged = {}
|
||||
for ctx, (soa, supp, seqs) in ctx_data.items():
|
||||
merged[ctx] = seqs
|
||||
# Add contexts with < 2 sequences (no SOA built)
|
||||
for ctx, seqs in contexts.items():
|
||||
if ctx not in merged:
|
||||
merged[ctx] = seqs
|
||||
|
||||
merge_info = {
|
||||
"iterations": iteration,
|
||||
"merges": len(merge_log),
|
||||
"comparisons": total_comparisons,
|
||||
"contexts_before": len(contexts),
|
||||
"contexts_after": len(merged),
|
||||
"threshold": threshold,
|
||||
"merge_log": merge_log,
|
||||
}
|
||||
|
||||
return merged, merge_info
|
||||
|
||||
|
||||
def minimize_contexts(merged_contexts):
|
||||
"""Minimize: merge contexts with identical SOREs (Line 15, Algorithm 4).
|
||||
|
||||
After Reduce, some contexts may have identical SOREs. Minimize unifies them.
|
||||
|
||||
For our use case: group contexts by their inferred SORE, merge those with
|
||||
the same SORE into a single context.
|
||||
"""
|
||||
# Build SORE for each context
|
||||
ctx_sores = {}
|
||||
for ctx, seqs in merged_contexts.items():
|
||||
if len(seqs) < 2:
|
||||
ctx_sores[ctx] = ("∅", seqs)
|
||||
continue
|
||||
|
||||
from .tag_preprocessor.analyze import frequency_filter
|
||||
filtered = frequency_filter(
|
||||
[[(j, s, 0) for j, s in enumerate(seq)] for seq in seqs],
|
||||
min_coverage=0.0,
|
||||
)
|
||||
clean = [[text for _, text, _ in r] for r in filtered]
|
||||
clean = [s for s in clean if s]
|
||||
|
||||
if len(clean) < 2:
|
||||
ctx_sores[ctx] = ("∅", seqs)
|
||||
continue
|
||||
|
||||
soa = build_soa(clean)
|
||||
sore = rwr0(soa)
|
||||
ctx_sores[ctx] = (sore, seqs)
|
||||
|
||||
# Group by SORE
|
||||
sore_groups = defaultdict(list)
|
||||
for ctx, (sore, seqs) in ctx_sores.items():
|
||||
sore_groups[sore].append((ctx, seqs))
|
||||
|
||||
# Merge contexts with same SORE
|
||||
minimized = {}
|
||||
for sore, items in sore_groups.items():
|
||||
if len(items) == 1:
|
||||
ctx, seqs = items[0]
|
||||
minimized[ctx] = seqs
|
||||
else:
|
||||
# Multiple contexts with same SORE -> merge into one
|
||||
merged_seqs = []
|
||||
for ctx, seqs in items:
|
||||
merged_seqs.extend(seqs)
|
||||
# Use the shortest context key as the representative
|
||||
rep = min(items, key=lambda x: len(x[0]))[0]
|
||||
minimized[rep] = merged_seqs
|
||||
|
||||
return minimized
|
||||
|
||||
|
||||
def reduce_and_infer(contexts, threshold, min_methods=3):
|
||||
"""Full Reduce + Minimize + Infer pipeline.
|
||||
|
||||
Args:
|
||||
contexts: dict mapping context_key -> list of sequences
|
||||
threshold: similarity threshold for Reduce
|
||||
min_methods: minimum methods per context to attempt inference
|
||||
|
||||
Returns:
|
||||
dict with keys:
|
||||
merged: final context->sequences mapping (after minimize)
|
||||
infer_results: list of (context, sore, methods_count) tuples
|
||||
merge_info: stats from reduce step
|
||||
minimize_info: stats from minimize step
|
||||
"""
|
||||
merged, merge_info = reduce_contexts(contexts, threshold)
|
||||
minimized = minimize_contexts(merged)
|
||||
|
||||
minimize_info = {
|
||||
"contexts_before": merge_info["contexts_after"],
|
||||
"contexts_after": len(minimized),
|
||||
"merged_by_sore": merge_info["contexts_after"] - len(minimized),
|
||||
}
|
||||
|
||||
# Line 14: ToSore(soa(t)) — infer SOREs for each context
|
||||
infer_results = []
|
||||
for ctx, seqs in sorted(minimized.items(), key=lambda x: -len(x[1])):
|
||||
n = len(seqs)
|
||||
if n < min_methods:
|
||||
continue
|
||||
from .tag_preprocessor.analyze import frequency_filter
|
||||
filtered = frequency_filter(
|
||||
[[(j, s, 0) for j, s in enumerate(seq)] for seq in seqs],
|
||||
min_coverage=0.0,
|
||||
)
|
||||
clean = [[text for _, text, _ in r] for r in filtered]
|
||||
clean = [s for s in clean if s]
|
||||
if len(clean) < 2:
|
||||
continue
|
||||
|
||||
soa = build_soa(clean)
|
||||
sore = rwr0(soa)
|
||||
if sore != "∅":
|
||||
infer_results.append((ctx, sore, n))
|
||||
|
||||
return {
|
||||
"merged": minimized,
|
||||
"infer_results": infer_results,
|
||||
"merge_info": merge_info,
|
||||
"minimize_info": minimize_info,
|
||||
"coverage_count": sum(n for _, _, n in infer_results),
|
||||
}
|
||||
|
|
@ -1,99 +1,119 @@
|
|||
# Experiment Results — RAGSAK Context Strategies
|
||||
# Experiment Results — Context Strategies + Reduce
|
||||
|
||||
**Date**: 2026-07-11
|
||||
**Codebase**: RAGSAK (462 .kt files, 1594 methods, 137 packages)
|
||||
**Date**: 2026-07-12
|
||||
|
||||
## Summary Table
|
||||
## Codebases
|
||||
|
||||
| Strategy | Contexts | SORE OK | Coverage | Notes |
|
||||
|----------|----------|---------|----------|-------|
|
||||
| Baseline (package) | 116 | 2 | 0.6% | Current approach — terrible |
|
||||
| File path k=1 | 43 | 2 | 1.1% | Structural — no better than baseline |
|
||||
| File path k=2 | 54 | 2 | 1.1% | Same — structural doesn't help |
|
||||
| File path k=3 | 54 | 2 | 1.1% | Same — structural doesn't help |
|
||||
| Codebase | Files | Methods | Language |
|
||||
|----------|-------|---------|----------|
|
||||
| RAGSAK | 462 | 1594 | Kotlin |
|
||||
| Flask | 24 | 1391 | Python |
|
||||
|
||||
## RAGSAK Results
|
||||
|
||||
| Strategy | Contexts | SOREs | Coverage | Notes |
|
||||
|----------|----------|-------|----------|-------|
|
||||
| Baseline (package) | 116 | 2 | 0.6% | Structural — useless |
|
||||
| File path k=1 | 43 | 2 | 1.1% | Structural — no better |
|
||||
| File path k=2 | 54 | 2 | 1.1% | Same |
|
||||
| File path k=3 | 54 | 2 | 1.1% | Same |
|
||||
| **First 1 symbol** | 134 | **20** | **4.6%** | Behavioral — 10× better |
|
||||
| **First 2 symbols** | 141 | **39** | **9.8%** | Behavioral — 20× better |
|
||||
| **First 3 symbols** | 117 | **47** | **12.0%** | Behavioral — **winner** |
|
||||
| Two-dim (p1,s1) | 151 | 24 | 6.3% | Hybrid — worse than behavioral alone |
|
||||
| Two-dim (p1,s2) | 119 | 33 | 8.7% | Hybrid — worse than behavioral alone |
|
||||
| Two-dim (p2,s1) | 146 | 24 | 6.3% | Hybrid — worse than behavioral alone |
|
||||
| Two-dim (p2,s2) | 117 | 33 | 8.7% | Hybrid — worse than behavioral alone |
|
||||
| Return type heuristic | 5 | 0 | 0.0% | Too coarse — useless |
|
||||
| **First 3 symbols** | 117 | **47** | **12.0%** | **Winner** |
|
||||
| Two-dim (p1,s1) | 151 | 24 | 6.3% | Hybrid — worse |
|
||||
| Two-dim (p1,s2) | 119 | 33 | 8.7% | Hybrid — worse |
|
||||
| Two-dim (p2,s1) | 146 | 24 | 6.3% | Hybrid — worse |
|
||||
| Two-dim (p2,s2) | 117 | 33 | 8.7% | Hybrid — worse |
|
||||
| Return type heuristic | 5 | 0 | 0.0% | Useless |
|
||||
|
||||
### Reduce Results (RAGSAK)
|
||||
|
||||
| Base | Threshold | Merges | Coverage | Notes |
|
||||
|------|-----------|--------|----------|-------|
|
||||
| k=1 | 0.05-0.4 | 0 | 4.6% | No merges — contexts too distinct |
|
||||
| k=2 | 0.05-0.2 | 0 | 9.8% | No merges |
|
||||
| k=2 | 0.3 | 1 | 9.6% | Merged `(JobStatus, every)` with `(JobStatus, now)` |
|
||||
| k=2 | 0.4 | 2 | 9.5% | Merged 2 pairs |
|
||||
| k=3 | 0.05-0.2 | 0 | 12.0% | No merges |
|
||||
| k=3 | 0.3 | 1 | 11.7% | Merged `(JobStatus, every, getJobStatus)` with `(JobStatus, now, minusMinutes)` |
|
||||
| k=3 | 0.4 | 1 | 11.7% | Same merge |
|
||||
|
||||
## Flask Results
|
||||
|
||||
| Strategy | Contexts | SOREs | Coverage | Notes |
|
||||
|----------|----------|-------|----------|-------|
|
||||
| Baseline (package) | 9 | 0 | 0.0% | Structural — useless |
|
||||
| File path k=1 | 7 | 0 | 0.0% | Same |
|
||||
| File path k=2 | 9 | 0 | 0.0% | Same |
|
||||
| File path k=3 | 9 | 0 | 0.0% | Same |
|
||||
| **First 1 symbol** | 53 | **2** | **1.4%** | Behavioral — only 2 SOREs |
|
||||
| **First 2 symbols** | 96 | **18** | **7.3%** | Behavioral — 15× better |
|
||||
| **First 3 symbols** | 85 | **21** | **10.7%** | **Winner** |
|
||||
| Two-dim (p1,s1) | 68 | 5 | 2.2% | Hybrid — worse |
|
||||
| Two-dim (p1,s2) | 96 | 22 | 10.1% | Close to behavioral |
|
||||
| Two-dim (p2,s1) | 69 | 5 | 2.2% | Worse |
|
||||
| Two-dim (p2,s2) | 93 | 19 | 9.5% | Close to behavioral |
|
||||
| Return type heuristic | 3 | 0 | 0.0% | Useless |
|
||||
|
||||
### Reduce Results (Flask)
|
||||
|
||||
| Base | Threshold | Merges | Coverage | Notes |
|
||||
|------|-----------|--------|----------|-------|
|
||||
| k=1 | 0.05-0.4 | 0 | 1.4% | No merges |
|
||||
| k=2 | 0.05-0.2 | 0 | 7.3% | No merges |
|
||||
| k=2 | 0.3-0.4 | 1 | 7.3% | Merged `(def, boolean)` with `(def, is_boolean)` |
|
||||
| k=3 | 0.05-0.2 | 0 | 10.7% | No merges |
|
||||
| k=3 | 0.3-0.4 | 1 | 10.7% | Merged `(def, boolean, return)` with `(def, is_boolean, return)` |
|
||||
|
||||
## Cross-Codebase Comparison
|
||||
|
||||
| Metric | RAGSAK | Flask |
|
||||
|--------|--------|-------|
|
||||
| Best strategy | First 3 symbols | First 3 symbols |
|
||||
| Best coverage | 12.0% | 10.7% |
|
||||
| SOREs (best) | 47 | 21 |
|
||||
| Reduce merges (ε=0.3) | 1 | 1 |
|
||||
| Reduce impact on coverage | -0.3% | 0% |
|
||||
|
||||
## Key Findings
|
||||
|
||||
### 1. Behavioral grouping > Structural grouping
|
||||
- File path strategies (A) produce same results as baseline — structural similarity doesn't predict behavioral similarity
|
||||
- First-k-symbols strategies (B) produce 20× more SOREs — behavioral prefix is the right signal
|
||||
- **Winner: Option B, k=3** — 47 SOREs, 12% coverage
|
||||
### 1. Behavioral grouping wins consistently
|
||||
- Both codebases: First-k-symbols beats all other strategies
|
||||
- Structural (file path) is useless — doesn't predict behavioral similarity
|
||||
- Hybrid (2D) is worse than pure behavioral
|
||||
|
||||
### 2. Two-dimensional doesn't help
|
||||
- Adding file path to behavioral grouping **reduces** performance
|
||||
- The structural component drags down the behavioral signal
|
||||
- Conclusion: **drop the structural dimension entirely**
|
||||
### 2. Coverage ceiling is ~10-12%
|
||||
- RAGSAK: 12.0% with 47 SOREs
|
||||
- Flask: 10.7% with 21 SOREs
|
||||
- Most methods have unique call patterns — they don't share prefixes
|
||||
|
||||
### 3. The successful SOREs reveal real patterns
|
||||
### 3. Reduce has minimal impact
|
||||
- Very few merges at any threshold (0-2 per codebase)
|
||||
- Support-weighted distance is conservative — requires very similar SOAs
|
||||
- Merges that do happen don't improve coverage
|
||||
- Reason: contexts created by first-k-symbols are already quite distinct
|
||||
|
||||
**Test patterns** (most common):
|
||||
- `post.uri.exchange.expectStatus.(expectBody.jsonPath.isEqualTo)?` — HTTP test flow
|
||||
- `runTest.post.uri.bodyValue.(ChatRequest|SessionChatRequest).exchange.expectStatus` — test setup
|
||||
- `every.getJobStatus.get.uri.exchange.expectStatus.(expectBody.jsonPath.isEqualTo)?` — polling pattern
|
||||
### 4. The few Reduce merges are meaningful
|
||||
- RAGSAK: `(JobStatus, every, getJobStatus)` ↔ `(JobStatus, now, minusMinutes)` — same polling pattern, different initial call
|
||||
- Flask: `(def, boolean)` ↔ `(def, is_boolean)` — same type-checking pattern, different method name
|
||||
|
||||
**Assertion patterns**:
|
||||
- `assertEquals.(of.(assertFailsWith)?)+` — assertion chain
|
||||
- `filesIn.assertTrue.(hasImport)+` — file validation
|
||||
- `trim.lowercase.(warn)+` — string processing
|
||||
|
||||
**Mock patterns**:
|
||||
- `mockk.every....` — mock setup
|
||||
- `clearAllMocks` — cleanup
|
||||
|
||||
**CRUD patterns**:
|
||||
- `info.deleteByJobId` — delete operation
|
||||
- `info.deleteByKnowledgeBaseId` — delete operation
|
||||
- `update.trimIndent.now.insertRow` — update operation
|
||||
|
||||
### 4. Why coverage is still low (12%)
|
||||
- Most methods have **unique call patterns** — they don't share a 3-symbol prefix with any other method
|
||||
- The 3-symbol prefix is too specific for diverse codebases
|
||||
- Need either:
|
||||
- More data (more codebases to train on)
|
||||
- Looser grouping (k=1 or k=2, but with merging)
|
||||
- Symbol coarsening (collapse specific symbols into categories)
|
||||
|
||||
### 5. Smart filters work well
|
||||
- `max_unique_ratio=0.85`: Skips 60-80% of groups (too diverse)
|
||||
- `max_alphabet=20`: Skips groups with too many unique symbols
|
||||
- `max_soa_edges=100`: Skips complex SOAs that would be slow
|
||||
- **Result**: Experiment runs in <1s instead of minutes
|
||||
|
||||
## Successful SORE Examples (Top 10 by group size)
|
||||
|
||||
| Context | Methods | Unique Ratio | SORE |
|
||||
|---------|---------|--------------|------|
|
||||
| `ery {.stKnowledgeBases().gRequest(m` | 12 | 0.333 | `ery {.stKnowledgeBases().gRequest(m.(ckKnowledgeBase(re.ertEquals(Kn."k\|eckKnowledgeBase(r.(sertEquals(K.("\|(sertEquals(` |
|
||||
| `mockk` | 11 | 0.091 | `mockk` |
|
||||
| `filesIn.assertTrue.hasImport` | 7 | 0.286 | `filesIn.assertTrue.(hasImport)+` |
|
||||
| `of` | 7 | 0.143 | `of` |
|
||||
| `assertEquals.of.assertFailsWith` | 7 | 0.429 | `assertEquals.(of.(assertFailsWith)?)+` |
|
||||
| `filesIn.filter.contains` | 5 | 0.400 | `filesIn.filter.contains.assertTrue.(hasImport)+` |
|
||||
| `trim.lowercase.warn` | 5 | 0.400 | `trim.lowercase.(warn)+` |
|
||||
| `DoclingConfig.assertThatThrownBy.validateCriticalSettings` | 5 | 0.200 | `DoclingConfig.assertThatThrownBy.validateCriticalSettings.isInstanceOf.hasMessageContaining` |
|
||||
| `defaultCapabilityId` | 4 | 0.250 | `defaultCapabilityId` |
|
||||
| `clearAllMocks` | 4 | 0.250 | `clearAllMocks` |
|
||||
### 5. Flask is harder than RAGSAK
|
||||
- Flask has fewer files (24 vs 462) but similar methods (1391 vs 1594)
|
||||
- Flask has more unique methods per package — less repetition
|
||||
- Flask SOREs are shorter/simpler — less compressible patterns
|
||||
|
||||
## Next Steps
|
||||
|
||||
1. **Symbol coarsening**: Collapse specific symbols into categories (GETTER, SETTER, BUILDER, etc.) to reduce fragmentation
|
||||
2. **Hierarchical grouping**: Group by k=1 first, then sub-group by k=2 within each group
|
||||
3. **Merge similar contexts**: After initial grouping, merge contexts with similar SOREs (Bex's Reduce algorithm)
|
||||
4. **Test on more codebases**: RAGSAK may not be representative — need more data
|
||||
5. **Accept the limit**: Some methods are genuinely unique — 12% coverage may be the ceiling for this approach
|
||||
1. **Accept the ceiling**: ~10-12% coverage may be the maximum for prefix-based grouping
|
||||
2. **Symbol coarsening**: Collapse specific symbols into categories (GETTER, SETTER, etc.)
|
||||
3. **Hierarchical grouping**: Group by k=1 first, then sub-group by k=2 within each group
|
||||
4. **GBNF output**: Convert SOREs to GBNF format for llama.cpp constrained decoding
|
||||
5. **Test on kotlinx.coroutines**: Third codebase for cross-validation
|
||||
|
||||
## Files Generated
|
||||
|
||||
- `experiments/results/summary.json` — metrics for all strategies
|
||||
- `experiments/results/*.json` — detailed results per strategy
|
||||
- `experiments/context_eval.py` — experiment runner script
|
||||
- `Papers/02-06-2026/context-design-analysis.md` — analysis of all options
|
||||
- `Papers/02-06-2026/bex-research-summary.md` — summary of Bex's papers
|
||||
- `experiments/results/ragsak_summary.json` — RAGSAK metrics
|
||||
- `experiments/results/flask_summary.json` — Flask metrics
|
||||
- `experiments/context_eval.py` — experiment runner (supports multiple codebases)
|
||||
- `bex/reduce.py` — Algorithm 4 (TODS 2010) implementation
|
||||
- `tests/test_reduce.py` — 24 tests for Reduce
|
||||
|
|
|
|||
|
|
@ -1,12 +1,12 @@
|
|||
"""Context Strategy Experiments — Test all context strategies on RAGSAK.
|
||||
"""Context Strategy Experiments — Test context strategies + Reduce merging.
|
||||
|
||||
Preserves results in experiments/results/ for future reference.
|
||||
Tests on multiple codebases. Preserves results in experiments/results/.
|
||||
"""
|
||||
|
||||
import json
|
||||
import os
|
||||
import sys
|
||||
import time
|
||||
from collections import defaultdict, Counter
|
||||
from collections import defaultdict
|
||||
from pathlib import Path
|
||||
|
||||
from bex.tag_preprocessor.analyze import (
|
||||
|
|
@ -14,25 +14,35 @@ from bex.tag_preprocessor.analyze import (
|
|||
)
|
||||
from bex.twotinf import build_soa
|
||||
from bex.rwr0 import rwr0
|
||||
from bex.crx import CRX
|
||||
from bex.idregex import idregex
|
||||
from bex.mdl import lang_size_score
|
||||
from bex.reduce import reduce_contexts, soa_distance, build_soa_with_support
|
||||
|
||||
|
||||
BASE = "/home/tobi/Desktop/kesai/RAGSAK"
|
||||
RESULTS_DIR = Path(__file__).parent / "results"
|
||||
|
||||
|
||||
def load_data():
|
||||
"""Load all Kotlin files from RAGSAK."""
|
||||
groups = scan_directory(BASE)
|
||||
kt_files = groups.get(".kt", [])
|
||||
sequences, seq_files = _preprocess_files(kt_files)
|
||||
CODEBASES = {
|
||||
"ragsak": {"name": "RAGSAK", "path": "/home/tobi/Desktop/kesai/RAGSAK", "ext": ".kt"},
|
||||
"flask": {"name": "Flask", "path": "/home/tobi/Desktop/dervish/external_refs/flask", "ext": ".py"},
|
||||
}
|
||||
|
||||
|
||||
# ---------------------------------------------------------------------------
|
||||
# Data loading
|
||||
# ---------------------------------------------------------------------------
|
||||
|
||||
def load_data(base, ext):
|
||||
groups = scan_directory(base)
|
||||
files = groups.get(ext, [])
|
||||
sequences, seq_files = _preprocess_files(files)
|
||||
symbol_seqs = [[text for _, text, _ in seq] for seq in sequences]
|
||||
packages = [_file_to_package(fp, BASE) for fp in seq_files]
|
||||
packages = [_file_to_package(fp, base) for fp in seq_files]
|
||||
return symbol_seqs, packages, seq_files
|
||||
|
||||
|
||||
# ---------------------------------------------------------------------------
|
||||
# Context strategies
|
||||
# ---------------------------------------------------------------------------
|
||||
|
||||
def context_file_path_k(symbol_seqs, packages, k):
|
||||
"""Option A: Group by last k components of file path."""
|
||||
contexts = defaultdict(list)
|
||||
|
|
@ -79,7 +89,6 @@ def context_return_type_heuristic(symbol_seqs):
|
|||
if not seq:
|
||||
contexts[("ε",)].append(seq)
|
||||
else:
|
||||
# Heuristic: last symbol often indicates return type
|
||||
last = seq[-1]
|
||||
if last.startswith("return"):
|
||||
ctx = ("RETURN_" + last.split()[1] if len(last.split()) > 1 else "RETURN_OTHER",)
|
||||
|
|
@ -93,16 +102,13 @@ def context_return_type_heuristic(symbol_seqs):
|
|||
return contexts
|
||||
|
||||
|
||||
# ---------------------------------------------------------------------------
|
||||
# Evaluation
|
||||
# ---------------------------------------------------------------------------
|
||||
|
||||
def evaluate_context(contexts, label, min_methods=3, max_methods=50,
|
||||
max_unique_ratio=0.85, max_alphabet=20, max_soa_edges=100):
|
||||
"""Evaluate a context grouping: learn SOREs, collect metrics.
|
||||
|
||||
Smart filters before attempting REWRITE:
|
||||
- max_methods: skip groups too large (will fail, waste time)
|
||||
- max_unique_ratio: skip if sequences are too diverse
|
||||
- max_alphabet: skip if too many unique symbols (SORE can't compress)
|
||||
- max_soa_edges: skip if SOA is too complex (REWRITE will be slow)
|
||||
"""
|
||||
"""Evaluate a context grouping: learn SOREs, collect metrics."""
|
||||
results = {
|
||||
"strategy": label,
|
||||
"total_contexts": len(contexts),
|
||||
|
|
@ -125,7 +131,6 @@ def evaluate_context(contexts, label, min_methods=3, max_methods=50,
|
|||
unique = len(set(tuple(s) for s in seqs))
|
||||
unique_ratio = unique / n if n else 1.0
|
||||
|
||||
# Filter: too many methods
|
||||
if n > max_methods:
|
||||
results["skip_reasons"]["too_large"] = results["skip_reasons"].get("too_large", 0) + 1
|
||||
results["groups"].append({
|
||||
|
|
@ -135,7 +140,6 @@ def evaluate_context(contexts, label, min_methods=3, max_methods=50,
|
|||
})
|
||||
continue
|
||||
|
||||
# Filter: too diverse
|
||||
if unique_ratio > max_unique_ratio:
|
||||
results["skip_reasons"]["too_diverse"] = results["skip_reasons"].get("too_diverse", 0) + 1
|
||||
results["groups"].append({
|
||||
|
|
@ -145,7 +149,6 @@ def evaluate_context(contexts, label, min_methods=3, max_methods=50,
|
|||
})
|
||||
continue
|
||||
|
||||
# Filter: too many unique symbols
|
||||
alphabet = set()
|
||||
for seq in seqs:
|
||||
alphabet.update(seq)
|
||||
|
|
@ -158,7 +161,6 @@ def evaluate_context(contexts, label, min_methods=3, max_methods=50,
|
|||
})
|
||||
continue
|
||||
|
||||
# Filter: rare symbols
|
||||
filtered = frequency_filter(
|
||||
[[(j, s, 0) for j, s in enumerate(seq)] for seq in seqs],
|
||||
min_coverage=0.0,
|
||||
|
|
@ -170,7 +172,6 @@ def evaluate_context(contexts, label, min_methods=3, max_methods=50,
|
|||
results["skip_reasons"]["empty_after_filter"] = results["skip_reasons"].get("empty_after_filter", 0) + 1
|
||||
continue
|
||||
|
||||
# Build SOA and check complexity before REWRITE
|
||||
soa = build_soa(clean)
|
||||
n_edges = sum(len(v) for v in soa._succ.values())
|
||||
if n_edges > max_soa_edges:
|
||||
|
|
@ -182,7 +183,6 @@ def evaluate_context(contexts, label, min_methods=3, max_methods=50,
|
|||
})
|
||||
continue
|
||||
|
||||
# Learn SORE
|
||||
sore = rwr0(soa)
|
||||
|
||||
group_info = {
|
||||
|
|
@ -210,90 +210,143 @@ def evaluate_context(contexts, label, min_methods=3, max_methods=50,
|
|||
return results
|
||||
|
||||
|
||||
def run_experiment(name, contexts, label):
|
||||
"""Run one experiment, save results."""
|
||||
print(f"\n{'='*60}")
|
||||
print(f" {label}")
|
||||
print(f"{'='*60}")
|
||||
def run_experiment(name, contexts, label, codebase_name, merge_info=None):
|
||||
"""Run one experiment, print + save results."""
|
||||
print(f"\n {label}")
|
||||
|
||||
t0 = time.time()
|
||||
results = evaluate_context(contexts, label)
|
||||
elapsed = time.time() - t0
|
||||
results["elapsed_seconds"] = round(elapsed, 2)
|
||||
if merge_info:
|
||||
results["merge_info"] = merge_info
|
||||
|
||||
print(f" Contexts: {results['total_contexts']}")
|
||||
print(f" Meaningful (>=3 methods): {results['meaningful_contexts']}")
|
||||
if results.get("skip_reasons"):
|
||||
for reason, count in results["skip_reasons"].items():
|
||||
print(f" Skipped ({reason}): {count}")
|
||||
print(f" SORE successes: {results['sore_successes']}")
|
||||
print(f" SORE failures: {results['sore_failures']}")
|
||||
print(f" Coverage: {results['coverage']}%")
|
||||
print(f" Time: {elapsed:.1f}s")
|
||||
print(f" Contexts: {results['total_contexts']} Meaningful: {results['meaningful_contexts']} "
|
||||
f"SOREs: {results['sore_successes']} Coverage: {results['coverage']}% "
|
||||
f"Time: {elapsed:.2f}s")
|
||||
if merge_info:
|
||||
print(f" Merges: {merge_info['merges']} Threshold: {merge_info['threshold']}")
|
||||
|
||||
# Save
|
||||
out_path = RESULTS_DIR / f"{name}.json"
|
||||
out_path = RESULTS_DIR / f"{codebase_name}_{name}.json"
|
||||
with open(out_path, "w") as f:
|
||||
json.dump(results, f, indent=2)
|
||||
print(f" Saved: {out_path}")
|
||||
|
||||
return results
|
||||
|
||||
|
||||
def main():
|
||||
print("Loading RAGSAK data...")
|
||||
symbol_seqs, packages, seq_files = load_data()
|
||||
# ---------------------------------------------------------------------------
|
||||
# Run all experiments for one codebase
|
||||
# ---------------------------------------------------------------------------
|
||||
|
||||
def run_codebase(codebase_key):
|
||||
cfg = CODEBASES[codebase_key]
|
||||
name = cfg["name"]
|
||||
base = cfg["path"]
|
||||
ext = cfg["ext"]
|
||||
|
||||
print(f"\n{'#' * 70}")
|
||||
print(f"# {name} ({base})")
|
||||
print(f"{'#' * 70}")
|
||||
|
||||
print(f"Loading {name} data...")
|
||||
symbol_seqs, packages, seq_files = load_data(base, ext)
|
||||
print(f"Loaded {len(symbol_seqs)} methods from {len(set(packages))} packages")
|
||||
|
||||
all_results = []
|
||||
|
||||
# Baseline: package grouping (current approach)
|
||||
# --- Baselines ---
|
||||
contexts = defaultdict(list)
|
||||
for i, seq in enumerate(symbol_seqs):
|
||||
contexts[packages[i]].append(seq)
|
||||
all_results.append(run_experiment("baseline_package", contexts, "Baseline: Package grouping"))
|
||||
all_results.append(run_experiment("baseline_package", contexts,
|
||||
"Baseline: Package grouping", codebase_key))
|
||||
|
||||
# Option A: File path k-equivalence
|
||||
for k in [1, 2, 3]:
|
||||
contexts = context_file_path_k(symbol_seqs, packages, k)
|
||||
all_results.append(run_experiment(f"file_path_k{k}", contexts, f"Option A: File path k={k}"))
|
||||
all_results.append(run_experiment(f"file_path_k{k}", contexts,
|
||||
f"Option A: File path k={k}", codebase_key))
|
||||
|
||||
# Option B: First k symbols
|
||||
for k in [1, 2, 3]:
|
||||
contexts = context_first_k_symbols(symbol_seqs, k)
|
||||
all_results.append(run_experiment(f"first_k_sym_{k}", contexts, f"Option B: First {k} symbols"))
|
||||
all_results.append(run_experiment(f"first_k_sym_{k}", contexts,
|
||||
f"Option B: First {k} symbols", codebase_key))
|
||||
|
||||
# Option C: Two-dimensional
|
||||
for path_k in [1, 2]:
|
||||
for sym_k in [1, 2]:
|
||||
contexts = context_two_d(symbol_seqs, packages, path_k, sym_k)
|
||||
all_results.append(run_experiment(
|
||||
f"two_d_p{path_k}_s{sym_k}", contexts,
|
||||
f"Option C: Path k={path_k} + Symbol k={sym_k}"
|
||||
))
|
||||
f"Option C: Path k={path_k} + Symbol k={sym_k}", codebase_key))
|
||||
|
||||
# Option H: Return type heuristic
|
||||
contexts = context_return_type_heuristic(symbol_seqs)
|
||||
all_results.append(run_experiment("return_type_heuristic", contexts, "Option H: Return type heuristic"))
|
||||
all_results.append(run_experiment("return_type_heuristic", contexts,
|
||||
"Option H: Return type heuristic", codebase_key))
|
||||
|
||||
# Summary
|
||||
print("\n" + "=" * 80)
|
||||
print(" SUMMARY")
|
||||
print("=" * 80)
|
||||
print(f"{'Strategy':<40} {'Contexts':>8} {'SORE OK':>8} {'Coverage':>8}")
|
||||
print("-" * 80)
|
||||
# --- Reduce experiments ---
|
||||
# Best base: first k symbols, k=1,2,3
|
||||
# Test Reduce on each with thresholds
|
||||
reduce_thresholds = [0.05, 0.10, 0.15, 0.20, 0.30, 0.40]
|
||||
|
||||
print(f"\n--- Reduce experiments ---")
|
||||
for base_k in [1, 2, 3]:
|
||||
base_contexts = context_first_k_symbols(symbol_seqs, base_k)
|
||||
base_eval = evaluate_context(base_contexts, f"First {base_k} symbols (pre-reduce)")
|
||||
|
||||
for threshold in reduce_thresholds:
|
||||
merged, merge_count = reduce_contexts(base_contexts, threshold)
|
||||
merge_info = {"merges": merge_count, "threshold": threshold,
|
||||
"contexts_before": len(base_contexts),
|
||||
"contexts_after": len(merged)}
|
||||
label = f"Reduce k={base_k} ε={threshold}"
|
||||
all_results.append(run_experiment(
|
||||
f"reduce_k{base_k}_e{str(threshold).replace('.', '')}",
|
||||
merged, label, codebase_key, merge_info))
|
||||
|
||||
# --- Summary ---
|
||||
print(f"\n{'=' * 70}")
|
||||
print(f" {name} SUMMARY")
|
||||
print(f"{'=' * 70}")
|
||||
print(f"{'Strategy':<42} {'Ctx':>5} {'SORE':>5} {'Cov%':>6} {'Merge':>5}")
|
||||
print("-" * 70)
|
||||
for r in all_results:
|
||||
print(f"{r['strategy']:<40} {r['meaningful_contexts']:>8} {r['sore_successes']:>8} {r['coverage']:>7}%")
|
||||
merge_str = ""
|
||||
if r.get("merge_info"):
|
||||
merge_str = str(r["merge_info"]["merges"])
|
||||
print(f"{r['strategy']:<42} {r['meaningful_contexts']:>5} "
|
||||
f"{r['sore_successes']:>5} {r['coverage']:>5.1f}% {merge_str:>5}")
|
||||
|
||||
# Save summary
|
||||
summary = [
|
||||
{k: v for k, v in r.items() if k != "groups"}
|
||||
for r in all_results
|
||||
]
|
||||
summary_path = RESULTS_DIR / "summary.json"
|
||||
summary_path = RESULTS_DIR / f"{codebase_key}_summary.json"
|
||||
with open(summary_path, "w") as f:
|
||||
json.dump(summary, f, indent=2)
|
||||
print(f"\nSummary saved: {summary_path}")
|
||||
print(f"\nSummary: {summary_path}")
|
||||
|
||||
return all_results
|
||||
|
||||
|
||||
def main():
|
||||
RESULTS_DIR.mkdir(parents=True, exist_ok=True)
|
||||
|
||||
targets = sys.argv[1:] if len(sys.argv) > 1 else list(CODEBASES.keys())
|
||||
|
||||
all_results = {}
|
||||
for key in targets:
|
||||
if key not in CODEBASES:
|
||||
print(f"Unknown codebase: {key}. Available: {list(CODEBASES.keys())}")
|
||||
continue
|
||||
all_results[key] = run_codebase(key)
|
||||
|
||||
# Cross-codebase comparison
|
||||
print(f"\n{'#' * 70}")
|
||||
print(f"# CROSS-CODEBASE COMPARISON")
|
||||
print(f"{'#' * 70}")
|
||||
for key, results in all_results.items():
|
||||
cfg = CODEBASES[key]
|
||||
best = max(results, key=lambda r: r["coverage"])
|
||||
print(f"\n {cfg['name']}: best = {best['strategy']} ({best['coverage']}%)")
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
|
|
|
|||
90
experiments/results/flask_baseline_package.json
Normal file
90
experiments/results/flask_baseline_package.json
Normal file
|
|
@ -0,0 +1,90 @@
|
|||
{
|
||||
"strategy": "Baseline: Package grouping",
|
||||
"total_contexts": 15,
|
||||
"meaningful_contexts": 9,
|
||||
"total_methods": 1391,
|
||||
"methods_in_good_groups": 0,
|
||||
"sore_successes": 0,
|
||||
"sore_failures": 1,
|
||||
"skip_reasons": {
|
||||
"too_large": 3,
|
||||
"large_alphabet": 1,
|
||||
"too_diverse": 4
|
||||
},
|
||||
"groups": [
|
||||
{
|
||||
"context": "tests",
|
||||
"methods": 943,
|
||||
"unique": 543,
|
||||
"unique_ratio": 0.576,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "src/flask",
|
||||
"methods": 207,
|
||||
"unique": 192,
|
||||
"unique_ratio": 0.928,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "src/flask/sansio",
|
||||
"methods": 102,
|
||||
"unique": 82,
|
||||
"unique_ratio": 0.804,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "src/flask/json",
|
||||
"methods": 49,
|
||||
"unique": 39,
|
||||
"unique_ratio": 0.796,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "examples/tutorial/tests",
|
||||
"methods": 23,
|
||||
"unique": 22,
|
||||
"unique_ratio": 0.957,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "tests/type_check",
|
||||
"methods": 23,
|
||||
"unique": 9,
|
||||
"unique_ratio": 0.391,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "examples/tutorial/flaskr",
|
||||
"methods": 18,
|
||||
"unique": 18,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "examples/celery/src/task_app",
|
||||
"methods": 11,
|
||||
"unique": 11,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "examples/javascript/tests",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
}
|
||||
],
|
||||
"coverage": 0.0,
|
||||
"elapsed_seconds": 0.02
|
||||
}
|
||||
74
experiments/results/flask_file_path_k1.json
Normal file
74
experiments/results/flask_file_path_k1.json
Normal file
|
|
@ -0,0 +1,74 @@
|
|||
{
|
||||
"strategy": "Option A: File path k=1",
|
||||
"total_contexts": 13,
|
||||
"meaningful_contexts": 7,
|
||||
"total_methods": 1391,
|
||||
"methods_in_good_groups": 0,
|
||||
"sore_successes": 0,
|
||||
"sore_failures": 1,
|
||||
"skip_reasons": {
|
||||
"too_large": 3,
|
||||
"large_alphabet": 1,
|
||||
"too_diverse": 2
|
||||
},
|
||||
"groups": [
|
||||
{
|
||||
"context": "('tests',)",
|
||||
"methods": 970,
|
||||
"unique": 565,
|
||||
"unique_ratio": 0.582,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('flask',)",
|
||||
"methods": 207,
|
||||
"unique": 192,
|
||||
"unique_ratio": 0.928,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('sansio',)",
|
||||
"methods": 102,
|
||||
"unique": 82,
|
||||
"unique_ratio": 0.804,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('json',)",
|
||||
"methods": 49,
|
||||
"unique": 39,
|
||||
"unique_ratio": 0.796,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('type_check',)",
|
||||
"methods": 23,
|
||||
"unique": 9,
|
||||
"unique_ratio": 0.391,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('flaskr',)",
|
||||
"methods": 18,
|
||||
"unique": 18,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('task_app',)",
|
||||
"methods": 11,
|
||||
"unique": 11,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
}
|
||||
],
|
||||
"coverage": 0.0,
|
||||
"elapsed_seconds": 0.01
|
||||
}
|
||||
90
experiments/results/flask_file_path_k2.json
Normal file
90
experiments/results/flask_file_path_k2.json
Normal file
|
|
@ -0,0 +1,90 @@
|
|||
{
|
||||
"strategy": "Option A: File path k=2",
|
||||
"total_contexts": 15,
|
||||
"meaningful_contexts": 9,
|
||||
"total_methods": 1391,
|
||||
"methods_in_good_groups": 0,
|
||||
"sore_successes": 0,
|
||||
"sore_failures": 1,
|
||||
"skip_reasons": {
|
||||
"too_large": 3,
|
||||
"large_alphabet": 1,
|
||||
"too_diverse": 4
|
||||
},
|
||||
"groups": [
|
||||
{
|
||||
"context": "('tests',)",
|
||||
"methods": 943,
|
||||
"unique": 543,
|
||||
"unique_ratio": 0.576,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('src', 'flask')",
|
||||
"methods": 207,
|
||||
"unique": 192,
|
||||
"unique_ratio": 0.928,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('flask', 'sansio')",
|
||||
"methods": 102,
|
||||
"unique": 82,
|
||||
"unique_ratio": 0.804,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('flask', 'json')",
|
||||
"methods": 49,
|
||||
"unique": 39,
|
||||
"unique_ratio": 0.796,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tutorial', 'tests')",
|
||||
"methods": 23,
|
||||
"unique": 22,
|
||||
"unique_ratio": 0.957,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'type_check')",
|
||||
"methods": 23,
|
||||
"unique": 9,
|
||||
"unique_ratio": 0.391,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tutorial', 'flaskr')",
|
||||
"methods": 18,
|
||||
"unique": 18,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('src', 'task_app')",
|
||||
"methods": 11,
|
||||
"unique": 11,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('javascript', 'tests')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
}
|
||||
],
|
||||
"coverage": 0.0,
|
||||
"elapsed_seconds": 0.02
|
||||
}
|
||||
90
experiments/results/flask_file_path_k3.json
Normal file
90
experiments/results/flask_file_path_k3.json
Normal file
|
|
@ -0,0 +1,90 @@
|
|||
{
|
||||
"strategy": "Option A: File path k=3",
|
||||
"total_contexts": 15,
|
||||
"meaningful_contexts": 9,
|
||||
"total_methods": 1391,
|
||||
"methods_in_good_groups": 0,
|
||||
"sore_successes": 0,
|
||||
"sore_failures": 1,
|
||||
"skip_reasons": {
|
||||
"too_large": 3,
|
||||
"large_alphabet": 1,
|
||||
"too_diverse": 4
|
||||
},
|
||||
"groups": [
|
||||
{
|
||||
"context": "('tests',)",
|
||||
"methods": 943,
|
||||
"unique": 543,
|
||||
"unique_ratio": 0.576,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('src', 'flask')",
|
||||
"methods": 207,
|
||||
"unique": 192,
|
||||
"unique_ratio": 0.928,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('src', 'flask', 'sansio')",
|
||||
"methods": 102,
|
||||
"unique": 82,
|
||||
"unique_ratio": 0.804,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('src', 'flask', 'json')",
|
||||
"methods": 49,
|
||||
"unique": 39,
|
||||
"unique_ratio": 0.796,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('examples', 'tutorial', 'tests')",
|
||||
"methods": 23,
|
||||
"unique": 22,
|
||||
"unique_ratio": 0.957,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'type_check')",
|
||||
"methods": 23,
|
||||
"unique": 9,
|
||||
"unique_ratio": 0.391,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('examples', 'tutorial', 'flaskr')",
|
||||
"methods": 18,
|
||||
"unique": 18,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('celery', 'src', 'task_app')",
|
||||
"methods": 11,
|
||||
"unique": 11,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('examples', 'javascript', 'tests')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
}
|
||||
],
|
||||
"coverage": 0.0,
|
||||
"elapsed_seconds": 0.01
|
||||
}
|
||||
442
experiments/results/flask_first_k_sym_1.json
Normal file
442
experiments/results/flask_first_k_sym_1.json
Normal file
|
|
@ -0,0 +1,442 @@
|
|||
{
|
||||
"strategy": "Option B: First 1 symbols",
|
||||
"total_contexts": 228,
|
||||
"meaningful_contexts": 53,
|
||||
"total_methods": 1391,
|
||||
"methods_in_good_groups": 19,
|
||||
"sore_successes": 2,
|
||||
"sore_failures": 14,
|
||||
"skip_reasons": {
|
||||
"too_large": 5,
|
||||
"too_diverse": 29,
|
||||
"large_alphabet": 3
|
||||
},
|
||||
"groups": [
|
||||
{
|
||||
"context": "('return',)",
|
||||
"methods": 393,
|
||||
"unique": 88,
|
||||
"unique_ratio": 0.224,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if',)",
|
||||
"methods": 116,
|
||||
"unique": 109,
|
||||
"unique_ratio": 0.94,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@',)",
|
||||
"methods": 110,
|
||||
"unique": 102,
|
||||
"unique_ratio": 0.927,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise',)",
|
||||
"methods": 60,
|
||||
"unique": 27,
|
||||
"unique_ratio": 0.45,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('append',)",
|
||||
"methods": 51,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.059,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('class',)",
|
||||
"methods": 47,
|
||||
"unique": 45,
|
||||
"unique_ratio": 0.957,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('Blueprint',)",
|
||||
"methods": 40,
|
||||
"unique": 37,
|
||||
"unique_ratio": 0.925,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('def',)",
|
||||
"methods": 38,
|
||||
"unique": 36,
|
||||
"unique_ratio": 0.947,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('get',)",
|
||||
"methods": 25,
|
||||
"unique": 24,
|
||||
"unique_ratio": 0.96,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('Flask',)",
|
||||
"methods": 23,
|
||||
"unique": 23,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('isinstance',)",
|
||||
"methods": 17,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.353,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('abort',)",
|
||||
"methods": 16,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.062,
|
||||
"sore": "(abort)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('setdefault',)",
|
||||
"methods": 14,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.429,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('pop',)",
|
||||
"methods": 13,
|
||||
"unique": 5,
|
||||
"unique_ratio": 0.385,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('try',)",
|
||||
"methods": 13,
|
||||
"unique": 13,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('for',)",
|
||||
"methods": 12,
|
||||
"unique": 12,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('from',)",
|
||||
"methods": 12,
|
||||
"unique": 12,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('eturn',)",
|
||||
"methods": 11,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.364,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('super',)",
|
||||
"methods": 10,
|
||||
"unique": 10,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('yield',)",
|
||||
"methods": 9,
|
||||
"unique": 5,
|
||||
"unique_ratio": 0.556,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raises',)",
|
||||
"methods": 8,
|
||||
"unique": 7,
|
||||
"unique_ratio": 0.875,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('name_',)",
|
||||
"methods": 8,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('login',)",
|
||||
"methods": 7,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.857,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('app_context',)",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('_get_current_object',)",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('record_once',)",
|
||||
"methods": 6,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.167,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('cho(',)",
|
||||
"methods": 6,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('not',)",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('or',)",
|
||||
"methods": 5,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.6,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('await',)",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('test_client',)",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('mkdir',)",
|
||||
"methods": 5,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.8,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('ef',)",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('lask(',)",
|
||||
"methods": 5,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.8,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('get_flashed_messages',)",
|
||||
"methods": 5,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.8,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('import',)",
|
||||
"methods": 4,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('join',)",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('is',)",
|
||||
"methods": 4,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('write_text',)",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('em(sys.',)",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('setenv',)",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('ain_m',)",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('post',)",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('get_db',)",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('getLogger',)",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('getattr',)",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('setattr',)",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('rom',)",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('nvoke(',)",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('update',)",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('t',)",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('lask.u',)",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('ndpoin',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "ndpoin",
|
||||
"sore_success": true
|
||||
}
|
||||
],
|
||||
"coverage": 1.4,
|
||||
"elapsed_seconds": 0.08
|
||||
}
|
||||
786
experiments/results/flask_first_k_sym_2.json
Normal file
786
experiments/results/flask_first_k_sym_2.json
Normal file
|
|
@ -0,0 +1,786 @@
|
|||
{
|
||||
"strategy": "Option B: First 2 symbols",
|
||||
"total_contexts": 430,
|
||||
"meaningful_contexts": 96,
|
||||
"total_methods": 1391,
|
||||
"methods_in_good_groups": 102,
|
||||
"sore_successes": 18,
|
||||
"sore_failures": 23,
|
||||
"skip_reasons": {
|
||||
"too_large": 3,
|
||||
"too_diverse": 50,
|
||||
"large_alphabet": 2
|
||||
},
|
||||
"groups": [
|
||||
{
|
||||
"context": "('return',)",
|
||||
"methods": 203,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.005,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'route')",
|
||||
"methods": 58,
|
||||
"unique": 53,
|
||||
"unique_ratio": 0.914,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('append', 'append')",
|
||||
"methods": 51,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.059,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('Blueprint', 'Blueprint')",
|
||||
"methods": 40,
|
||||
"unique": 37,
|
||||
"unique_ratio": 0.925,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'render_template')",
|
||||
"methods": 33,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.061,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'is')",
|
||||
"methods": 33,
|
||||
"unique": 30,
|
||||
"unique_ratio": 0.909,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'isinstance')",
|
||||
"methods": 32,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.062,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('class', 'def')",
|
||||
"methods": 30,
|
||||
"unique": 28,
|
||||
"unique_ratio": 0.933,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('get', 'get')",
|
||||
"methods": 25,
|
||||
"unique": 24,
|
||||
"unique_ratio": 0.96,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('Flask', 'Flask')",
|
||||
"methods": 23,
|
||||
"unique": 23,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise',)",
|
||||
"methods": 19,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.053,
|
||||
"sore": "raise",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('isinstance', 'isinstance')",
|
||||
"methods": 17,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.353,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('abort', 'abort')",
|
||||
"methods": 16,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.062,
|
||||
"sore": "(abort)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('setdefault', 'setdefault')",
|
||||
"methods": 14,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.429,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('pop', 'pop')",
|
||||
"methods": 13,
|
||||
"unique": 5,
|
||||
"unique_ratio": 0.385,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'not')",
|
||||
"methods": 13,
|
||||
"unique": 12,
|
||||
"unique_ratio": 0.923,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('for', 'in')",
|
||||
"methods": 12,
|
||||
"unique": 12,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('class', 'class')",
|
||||
"methods": 11,
|
||||
"unique": 11,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('super', 'super')",
|
||||
"methods": 10,
|
||||
"unique": 10,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'is not')",
|
||||
"methods": 10,
|
||||
"unique": 9,
|
||||
"unique_ratio": 0.9,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'return')",
|
||||
"methods": 10,
|
||||
"unique": 10,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'jsonify')",
|
||||
"methods": 10,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.4,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'teardown_request')",
|
||||
"methods": 9,
|
||||
"unique": 8,
|
||||
"unique_ratio": 0.889,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'str')",
|
||||
"methods": 8,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.375,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raises', 'raises')",
|
||||
"methods": 8,
|
||||
"unique": 7,
|
||||
"unique_ratio": 0.875,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('eturn', 'lask(')",
|
||||
"methods": 8,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.125,
|
||||
"sore": "eturn.(lask()+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('name_', 'name_')",
|
||||
"methods": 8,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'get')",
|
||||
"methods": 7,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.429,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('login', 'login')",
|
||||
"methods": 7,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.857,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'isinstance')",
|
||||
"methods": 7,
|
||||
"unique": 7,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'url_for')",
|
||||
"methods": 7,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.143,
|
||||
"sore": "return.(url_for)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('app_context', 'app_context')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('_get_current_object', '_get_current_object')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'callable')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('record_once', 'record_once')",
|
||||
"methods": 6,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.167,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('cho(', 'cho(')",
|
||||
"methods": 6,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'get')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'raise')",
|
||||
"methods": 5,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.8,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', '_method_route')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "return.(_method_route)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('await', 'sleep')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('test_client', 'test_client')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'teardown_appcontext')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise', 'ValueError')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "raise.(ValueError)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('mkdir', 'mkdir')",
|
||||
"methods": 5,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.8,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('lask(', 'lask(')",
|
||||
"methods": 5,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.8,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'dict')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "return.(dict)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('@', 'errorhandler')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('get_flashed_messages', 'get_flashed_messages')",
|
||||
"methods": 5,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.8,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'before_request')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('join', 'join')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'and')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('try', 'import')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise', 'NotImplementedError')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "raise.(NotImplementedError)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('return', 'tag')",
|
||||
"methods": 4,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('def', 'decorator')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('write_text', 'write_text')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('em(sys.', 'em(sys.')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('setenv', 'setenv')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('class', '@')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'render_template_string')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "return.(render_template_string)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('@', 'template_filter')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'template_test')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise', 'Forbidden')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "raise.(Forbidden)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('return', 'Response')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "return.(Response)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('ain_m', 'ain_m')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('post', 'post')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('get_db', 'get_db')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'not in')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'test_client')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "return.(test_client)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('yield',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "yield",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('try', 'return')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('import', 'warnings')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('def', 'wrapper')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'join')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('getLogger', 'getLogger')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'dumps')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('getattr', 'getattr')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'in')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('or',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "or",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('is', 'is not')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise', 'Exception')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "raise.(Exception)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('setattr', 'setattr')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('ef', 'reate_app(')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('nvoke(', 'nvoke(')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('yield', 'yield')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "(yield)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('@', 'stream_with_context')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('update', 'update')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'post')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'get')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'context_processor')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('def', 'my_reverse')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('from', 'blueprintapp')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('from', 'werkzeug')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise', 'InternalServerError')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "raise.(InternalServerError)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('def', 'index')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('ndpoin',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "ndpoin",
|
||||
"sore_success": true
|
||||
}
|
||||
],
|
||||
"coverage": 7.3,
|
||||
"elapsed_seconds": 0.08
|
||||
}
|
||||
698
experiments/results/flask_first_k_sym_3.json
Normal file
698
experiments/results/flask_first_k_sym_3.json
Normal file
|
|
@ -0,0 +1,698 @@
|
|||
{
|
||||
"strategy": "Option B: First 3 symbols",
|
||||
"total_contexts": 598,
|
||||
"meaningful_contexts": 85,
|
||||
"total_methods": 1391,
|
||||
"methods_in_good_groups": 149,
|
||||
"sore_successes": 21,
|
||||
"sore_failures": 23,
|
||||
"skip_reasons": {
|
||||
"too_large": 2,
|
||||
"too_diverse": 38,
|
||||
"large_alphabet": 1
|
||||
},
|
||||
"groups": [
|
||||
{
|
||||
"context": "('return',)",
|
||||
"methods": 203,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.005,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'route', 'route')",
|
||||
"methods": 58,
|
||||
"unique": 53,
|
||||
"unique_ratio": 0.914,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'render_template', 'render_template')",
|
||||
"methods": 33,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.061,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('append', 'append')",
|
||||
"methods": 33,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.03,
|
||||
"sore": "(append)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('return', 'isinstance', 'isinstance')",
|
||||
"methods": 32,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.062,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('Blueprint', 'Blueprint', '@')",
|
||||
"methods": 21,
|
||||
"unique": 21,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise',)",
|
||||
"methods": 19,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.053,
|
||||
"sore": "raise",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('isinstance', 'isinstance', 'isinstance')",
|
||||
"methods": 17,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.353,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('append', 'append', 'return')",
|
||||
"methods": 17,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.059,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('abort', 'abort')",
|
||||
"methods": 16,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.062,
|
||||
"sore": "(abort)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('if', 'is', 'return')",
|
||||
"methods": 10,
|
||||
"unique": 9,
|
||||
"unique_ratio": 0.9,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('super', 'super', 'super')",
|
||||
"methods": 10,
|
||||
"unique": 10,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'is not', 'is')",
|
||||
"methods": 10,
|
||||
"unique": 9,
|
||||
"unique_ratio": 0.9,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'jsonify', 'jsonify')",
|
||||
"methods": 10,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.4,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('get', 'get', 'if')",
|
||||
"methods": 9,
|
||||
"unique": 9,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'is', 'is not')",
|
||||
"methods": 9,
|
||||
"unique": 9,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('pop', 'pop')",
|
||||
"methods": 9,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.111,
|
||||
"sore": "(pop)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('setdefault', 'setdefault', 'append')",
|
||||
"methods": 9,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.222,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'teardown_request', 'def')",
|
||||
"methods": 9,
|
||||
"unique": 8,
|
||||
"unique_ratio": 0.889,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('Blueprint', 'Blueprint', 'def')",
|
||||
"methods": 9,
|
||||
"unique": 7,
|
||||
"unique_ratio": 0.778,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'str', 'str')",
|
||||
"methods": 8,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.375,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('eturn', 'lask(', 'lask(')",
|
||||
"methods": 8,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.125,
|
||||
"sore": "eturn.(lask()+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('Blueprint', 'Blueprint', 'Blueprint')",
|
||||
"methods": 8,
|
||||
"unique": 7,
|
||||
"unique_ratio": 0.875,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'get', 'get')",
|
||||
"methods": 7,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.429,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'isinstance', 'isinstance')",
|
||||
"methods": 7,
|
||||
"unique": 7,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'url_for', 'url_for')",
|
||||
"methods": 7,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.143,
|
||||
"sore": "return.(url_for)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('class', 'def', 'get')",
|
||||
"methods": 7,
|
||||
"unique": 7,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'callable', 'callable')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('record_once', 'record_once', 'lambda')",
|
||||
"methods": 6,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.167,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('class', 'def', '__init__')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'get', 'get')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'is', 'raise')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', '_method_route', '_method_route')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "return.(_method_route)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('await', 'sleep', 'sleep')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'teardown_appcontext', 'def')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise', 'ValueError', 'ValueError')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "raise.(ValueError)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('cho(', 'cho(')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "(cho()+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('return', 'dict', 'dict')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "return.(dict)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('@', 'errorhandler', 'errorhandler')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('class', 'def', 'dispatch_request')",
|
||||
"methods": 5,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.6,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'before_request', 'def')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('get', 'get', 'get')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise', 'NotImplementedError', 'NotImplementedError')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "raise.(NotImplementedError)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('get', 'get', 'return')",
|
||||
"methods": 4,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'tag', 'tag')",
|
||||
"methods": 4,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('Flask', 'Flask', '@')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('test_client', 'test_client', 'get')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('class', '@', 'errorhandler')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'render_template_string', 'render_template_string')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "return.(render_template_string)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('@', 'template_filter', 'template_filter')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'template_test', 'template_test')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise', 'Forbidden', 'Forbidden')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "raise.(Forbidden)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('return', 'Response', 'Response')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "return.(Response)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('Flask', 'Flask', 'from_mapping')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'not in', 'not')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'test_client', 'test_client')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "return.(test_client)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('yield',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "yield",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('login', 'login', 'post')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('def', 'wrapper', 'if')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'join', 'join')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'dumps', 'dumps')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('getattr', 'getattr', 'getattr')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('or',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "or",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('is', 'is not', 'not')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise', 'Exception', 'Exception')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "raise.(Exception)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('mkdir', 'mkdir', 'syspath_prepend')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('lask(', 'lask(', 'dd_url_rule(')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('em(sys.', 'em(sys.', 's(clic')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('setenv', 'setenv', 'setenv')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('Flask', 'Flask', 'raises')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('yield', 'yield', 'yield')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "(yield)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('@', 'stream_with_context', 'def')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('update', 'update', '@')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('Flask', 'Flask', 'test_client')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'post', 'post')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'get', 'get')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'context_processor', 'def')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('def', 'my_reverse', 'return')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('from', 'blueprintapp', 'import')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('from', 'werkzeug', 'routing')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise', 'InternalServerError', 'InternalServerError')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "raise.(InternalServerError)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('def', 'index', 'return')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('get_flashed_messages', 'get_flashed_messages', 'list')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('ndpoin',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "ndpoin",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('ain_m', 'ain_m', 'p.route(\"/\"')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
}
|
||||
],
|
||||
"coverage": 10.7,
|
||||
"elapsed_seconds": 0.11
|
||||
}
|
||||
456
experiments/results/flask_reduce_k1_e005.json
Normal file
456
experiments/results/flask_reduce_k1_e005.json
Normal file
|
|
@ -0,0 +1,456 @@
|
|||
{
|
||||
"strategy": "Reduce k=1 \u03b5=0.05",
|
||||
"total_contexts": 228,
|
||||
"meaningful_contexts": 53,
|
||||
"total_methods": 1391,
|
||||
"methods_in_good_groups": 19,
|
||||
"sore_successes": 2,
|
||||
"sore_failures": 14,
|
||||
"skip_reasons": {
|
||||
"too_large": 5,
|
||||
"too_diverse": 29,
|
||||
"large_alphabet": 3
|
||||
},
|
||||
"groups": [
|
||||
{
|
||||
"context": "('return',)",
|
||||
"methods": 393,
|
||||
"unique": 88,
|
||||
"unique_ratio": 0.224,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if',)",
|
||||
"methods": 116,
|
||||
"unique": 109,
|
||||
"unique_ratio": 0.94,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@',)",
|
||||
"methods": 110,
|
||||
"unique": 102,
|
||||
"unique_ratio": 0.927,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise',)",
|
||||
"methods": 60,
|
||||
"unique": 27,
|
||||
"unique_ratio": 0.45,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('append',)",
|
||||
"methods": 51,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.059,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('class',)",
|
||||
"methods": 47,
|
||||
"unique": 45,
|
||||
"unique_ratio": 0.957,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('Blueprint',)",
|
||||
"methods": 40,
|
||||
"unique": 37,
|
||||
"unique_ratio": 0.925,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('def',)",
|
||||
"methods": 38,
|
||||
"unique": 36,
|
||||
"unique_ratio": 0.947,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('get',)",
|
||||
"methods": 25,
|
||||
"unique": 24,
|
||||
"unique_ratio": 0.96,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('Flask',)",
|
||||
"methods": 23,
|
||||
"unique": 23,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('isinstance',)",
|
||||
"methods": 17,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.353,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('abort',)",
|
||||
"methods": 16,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.062,
|
||||
"sore": "(abort)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('setdefault',)",
|
||||
"methods": 14,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.429,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('pop',)",
|
||||
"methods": 13,
|
||||
"unique": 5,
|
||||
"unique_ratio": 0.385,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('try',)",
|
||||
"methods": 13,
|
||||
"unique": 13,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('for',)",
|
||||
"methods": 12,
|
||||
"unique": 12,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('from',)",
|
||||
"methods": 12,
|
||||
"unique": 12,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('eturn',)",
|
||||
"methods": 11,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.364,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('super',)",
|
||||
"methods": 10,
|
||||
"unique": 10,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('yield',)",
|
||||
"methods": 9,
|
||||
"unique": 5,
|
||||
"unique_ratio": 0.556,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raises',)",
|
||||
"methods": 8,
|
||||
"unique": 7,
|
||||
"unique_ratio": 0.875,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('name_',)",
|
||||
"methods": 8,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('login',)",
|
||||
"methods": 7,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.857,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('app_context',)",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('_get_current_object',)",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('record_once',)",
|
||||
"methods": 6,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.167,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('cho(',)",
|
||||
"methods": 6,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('not',)",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('or',)",
|
||||
"methods": 5,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.6,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('await',)",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('test_client',)",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('mkdir',)",
|
||||
"methods": 5,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.8,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('ef',)",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('lask(',)",
|
||||
"methods": 5,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.8,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('get_flashed_messages',)",
|
||||
"methods": 5,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.8,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('import',)",
|
||||
"methods": 4,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('join',)",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('is',)",
|
||||
"methods": 4,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('write_text',)",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('em(sys.',)",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('setenv',)",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('ain_m',)",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('post',)",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('get_db',)",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('getLogger',)",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('getattr',)",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('setattr',)",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('rom',)",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('nvoke(',)",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('update',)",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('t',)",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('lask.u',)",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('ndpoin',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "ndpoin",
|
||||
"sore_success": true
|
||||
}
|
||||
],
|
||||
"coverage": 1.4,
|
||||
"elapsed_seconds": 0.05,
|
||||
"merge_info": {
|
||||
"merges": {
|
||||
"iterations": 1,
|
||||
"merges": 0,
|
||||
"comparisons": 4095,
|
||||
"contexts_before": 228,
|
||||
"contexts_after": 228,
|
||||
"threshold": 0.05,
|
||||
"merge_log": []
|
||||
},
|
||||
"threshold": 0.05,
|
||||
"contexts_before": 228,
|
||||
"contexts_after": 228
|
||||
}
|
||||
}
|
||||
456
experiments/results/flask_reduce_k1_e01.json
Normal file
456
experiments/results/flask_reduce_k1_e01.json
Normal file
|
|
@ -0,0 +1,456 @@
|
|||
{
|
||||
"strategy": "Reduce k=1 \u03b5=0.1",
|
||||
"total_contexts": 228,
|
||||
"meaningful_contexts": 53,
|
||||
"total_methods": 1391,
|
||||
"methods_in_good_groups": 19,
|
||||
"sore_successes": 2,
|
||||
"sore_failures": 14,
|
||||
"skip_reasons": {
|
||||
"too_large": 5,
|
||||
"too_diverse": 29,
|
||||
"large_alphabet": 3
|
||||
},
|
||||
"groups": [
|
||||
{
|
||||
"context": "('return',)",
|
||||
"methods": 393,
|
||||
"unique": 88,
|
||||
"unique_ratio": 0.224,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if',)",
|
||||
"methods": 116,
|
||||
"unique": 109,
|
||||
"unique_ratio": 0.94,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@',)",
|
||||
"methods": 110,
|
||||
"unique": 102,
|
||||
"unique_ratio": 0.927,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise',)",
|
||||
"methods": 60,
|
||||
"unique": 27,
|
||||
"unique_ratio": 0.45,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('append',)",
|
||||
"methods": 51,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.059,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('class',)",
|
||||
"methods": 47,
|
||||
"unique": 45,
|
||||
"unique_ratio": 0.957,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('Blueprint',)",
|
||||
"methods": 40,
|
||||
"unique": 37,
|
||||
"unique_ratio": 0.925,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('def',)",
|
||||
"methods": 38,
|
||||
"unique": 36,
|
||||
"unique_ratio": 0.947,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('get',)",
|
||||
"methods": 25,
|
||||
"unique": 24,
|
||||
"unique_ratio": 0.96,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('Flask',)",
|
||||
"methods": 23,
|
||||
"unique": 23,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('isinstance',)",
|
||||
"methods": 17,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.353,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('abort',)",
|
||||
"methods": 16,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.062,
|
||||
"sore": "(abort)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('setdefault',)",
|
||||
"methods": 14,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.429,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('pop',)",
|
||||
"methods": 13,
|
||||
"unique": 5,
|
||||
"unique_ratio": 0.385,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('try',)",
|
||||
"methods": 13,
|
||||
"unique": 13,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('for',)",
|
||||
"methods": 12,
|
||||
"unique": 12,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('from',)",
|
||||
"methods": 12,
|
||||
"unique": 12,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('eturn',)",
|
||||
"methods": 11,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.364,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('super',)",
|
||||
"methods": 10,
|
||||
"unique": 10,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('yield',)",
|
||||
"methods": 9,
|
||||
"unique": 5,
|
||||
"unique_ratio": 0.556,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raises',)",
|
||||
"methods": 8,
|
||||
"unique": 7,
|
||||
"unique_ratio": 0.875,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('name_',)",
|
||||
"methods": 8,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('login',)",
|
||||
"methods": 7,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.857,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('app_context',)",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('_get_current_object',)",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('record_once',)",
|
||||
"methods": 6,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.167,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('cho(',)",
|
||||
"methods": 6,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('not',)",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('or',)",
|
||||
"methods": 5,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.6,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('await',)",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('test_client',)",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('mkdir',)",
|
||||
"methods": 5,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.8,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('ef',)",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('lask(',)",
|
||||
"methods": 5,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.8,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('get_flashed_messages',)",
|
||||
"methods": 5,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.8,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('import',)",
|
||||
"methods": 4,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('join',)",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('is',)",
|
||||
"methods": 4,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('write_text',)",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('em(sys.',)",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('setenv',)",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('ain_m',)",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('post',)",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('get_db',)",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('getLogger',)",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('getattr',)",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('setattr',)",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('rom',)",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('nvoke(',)",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('update',)",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('t',)",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('lask.u',)",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('ndpoin',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "ndpoin",
|
||||
"sore_success": true
|
||||
}
|
||||
],
|
||||
"coverage": 1.4,
|
||||
"elapsed_seconds": 0.03,
|
||||
"merge_info": {
|
||||
"merges": {
|
||||
"iterations": 1,
|
||||
"merges": 0,
|
||||
"comparisons": 4095,
|
||||
"contexts_before": 228,
|
||||
"contexts_after": 228,
|
||||
"threshold": 0.1,
|
||||
"merge_log": []
|
||||
},
|
||||
"threshold": 0.1,
|
||||
"contexts_before": 228,
|
||||
"contexts_after": 228
|
||||
}
|
||||
}
|
||||
456
experiments/results/flask_reduce_k1_e015.json
Normal file
456
experiments/results/flask_reduce_k1_e015.json
Normal file
|
|
@ -0,0 +1,456 @@
|
|||
{
|
||||
"strategy": "Reduce k=1 \u03b5=0.15",
|
||||
"total_contexts": 228,
|
||||
"meaningful_contexts": 53,
|
||||
"total_methods": 1391,
|
||||
"methods_in_good_groups": 19,
|
||||
"sore_successes": 2,
|
||||
"sore_failures": 14,
|
||||
"skip_reasons": {
|
||||
"too_large": 5,
|
||||
"too_diverse": 29,
|
||||
"large_alphabet": 3
|
||||
},
|
||||
"groups": [
|
||||
{
|
||||
"context": "('return',)",
|
||||
"methods": 393,
|
||||
"unique": 88,
|
||||
"unique_ratio": 0.224,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if',)",
|
||||
"methods": 116,
|
||||
"unique": 109,
|
||||
"unique_ratio": 0.94,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@',)",
|
||||
"methods": 110,
|
||||
"unique": 102,
|
||||
"unique_ratio": 0.927,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise',)",
|
||||
"methods": 60,
|
||||
"unique": 27,
|
||||
"unique_ratio": 0.45,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('append',)",
|
||||
"methods": 51,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.059,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('class',)",
|
||||
"methods": 47,
|
||||
"unique": 45,
|
||||
"unique_ratio": 0.957,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('Blueprint',)",
|
||||
"methods": 40,
|
||||
"unique": 37,
|
||||
"unique_ratio": 0.925,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('def',)",
|
||||
"methods": 38,
|
||||
"unique": 36,
|
||||
"unique_ratio": 0.947,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('get',)",
|
||||
"methods": 25,
|
||||
"unique": 24,
|
||||
"unique_ratio": 0.96,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('Flask',)",
|
||||
"methods": 23,
|
||||
"unique": 23,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('isinstance',)",
|
||||
"methods": 17,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.353,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('abort',)",
|
||||
"methods": 16,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.062,
|
||||
"sore": "(abort)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('setdefault',)",
|
||||
"methods": 14,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.429,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('pop',)",
|
||||
"methods": 13,
|
||||
"unique": 5,
|
||||
"unique_ratio": 0.385,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('try',)",
|
||||
"methods": 13,
|
||||
"unique": 13,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('for',)",
|
||||
"methods": 12,
|
||||
"unique": 12,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('from',)",
|
||||
"methods": 12,
|
||||
"unique": 12,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('eturn',)",
|
||||
"methods": 11,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.364,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('super',)",
|
||||
"methods": 10,
|
||||
"unique": 10,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('yield',)",
|
||||
"methods": 9,
|
||||
"unique": 5,
|
||||
"unique_ratio": 0.556,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raises',)",
|
||||
"methods": 8,
|
||||
"unique": 7,
|
||||
"unique_ratio": 0.875,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('name_',)",
|
||||
"methods": 8,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('login',)",
|
||||
"methods": 7,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.857,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('app_context',)",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('_get_current_object',)",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('record_once',)",
|
||||
"methods": 6,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.167,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('cho(',)",
|
||||
"methods": 6,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('not',)",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('or',)",
|
||||
"methods": 5,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.6,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('await',)",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('test_client',)",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('mkdir',)",
|
||||
"methods": 5,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.8,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('ef',)",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('lask(',)",
|
||||
"methods": 5,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.8,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('get_flashed_messages',)",
|
||||
"methods": 5,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.8,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('import',)",
|
||||
"methods": 4,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('join',)",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('is',)",
|
||||
"methods": 4,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('write_text',)",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('em(sys.',)",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('setenv',)",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('ain_m',)",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('post',)",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('get_db',)",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('getLogger',)",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('getattr',)",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('setattr',)",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('rom',)",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('nvoke(',)",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('update',)",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('t',)",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('lask.u',)",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('ndpoin',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "ndpoin",
|
||||
"sore_success": true
|
||||
}
|
||||
],
|
||||
"coverage": 1.4,
|
||||
"elapsed_seconds": 0.06,
|
||||
"merge_info": {
|
||||
"merges": {
|
||||
"iterations": 1,
|
||||
"merges": 0,
|
||||
"comparisons": 4095,
|
||||
"contexts_before": 228,
|
||||
"contexts_after": 228,
|
||||
"threshold": 0.15,
|
||||
"merge_log": []
|
||||
},
|
||||
"threshold": 0.15,
|
||||
"contexts_before": 228,
|
||||
"contexts_after": 228
|
||||
}
|
||||
}
|
||||
456
experiments/results/flask_reduce_k1_e02.json
Normal file
456
experiments/results/flask_reduce_k1_e02.json
Normal file
|
|
@ -0,0 +1,456 @@
|
|||
{
|
||||
"strategy": "Reduce k=1 \u03b5=0.2",
|
||||
"total_contexts": 228,
|
||||
"meaningful_contexts": 53,
|
||||
"total_methods": 1391,
|
||||
"methods_in_good_groups": 19,
|
||||
"sore_successes": 2,
|
||||
"sore_failures": 14,
|
||||
"skip_reasons": {
|
||||
"too_large": 5,
|
||||
"too_diverse": 29,
|
||||
"large_alphabet": 3
|
||||
},
|
||||
"groups": [
|
||||
{
|
||||
"context": "('return',)",
|
||||
"methods": 393,
|
||||
"unique": 88,
|
||||
"unique_ratio": 0.224,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if',)",
|
||||
"methods": 116,
|
||||
"unique": 109,
|
||||
"unique_ratio": 0.94,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@',)",
|
||||
"methods": 110,
|
||||
"unique": 102,
|
||||
"unique_ratio": 0.927,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise',)",
|
||||
"methods": 60,
|
||||
"unique": 27,
|
||||
"unique_ratio": 0.45,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('append',)",
|
||||
"methods": 51,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.059,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('class',)",
|
||||
"methods": 47,
|
||||
"unique": 45,
|
||||
"unique_ratio": 0.957,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('Blueprint',)",
|
||||
"methods": 40,
|
||||
"unique": 37,
|
||||
"unique_ratio": 0.925,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('def',)",
|
||||
"methods": 38,
|
||||
"unique": 36,
|
||||
"unique_ratio": 0.947,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('get',)",
|
||||
"methods": 25,
|
||||
"unique": 24,
|
||||
"unique_ratio": 0.96,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('Flask',)",
|
||||
"methods": 23,
|
||||
"unique": 23,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('isinstance',)",
|
||||
"methods": 17,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.353,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('abort',)",
|
||||
"methods": 16,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.062,
|
||||
"sore": "(abort)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('setdefault',)",
|
||||
"methods": 14,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.429,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('pop',)",
|
||||
"methods": 13,
|
||||
"unique": 5,
|
||||
"unique_ratio": 0.385,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('try',)",
|
||||
"methods": 13,
|
||||
"unique": 13,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('for',)",
|
||||
"methods": 12,
|
||||
"unique": 12,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('from',)",
|
||||
"methods": 12,
|
||||
"unique": 12,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('eturn',)",
|
||||
"methods": 11,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.364,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('super',)",
|
||||
"methods": 10,
|
||||
"unique": 10,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('yield',)",
|
||||
"methods": 9,
|
||||
"unique": 5,
|
||||
"unique_ratio": 0.556,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raises',)",
|
||||
"methods": 8,
|
||||
"unique": 7,
|
||||
"unique_ratio": 0.875,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('name_',)",
|
||||
"methods": 8,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('login',)",
|
||||
"methods": 7,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.857,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('app_context',)",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('_get_current_object',)",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('record_once',)",
|
||||
"methods": 6,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.167,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('cho(',)",
|
||||
"methods": 6,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('not',)",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('or',)",
|
||||
"methods": 5,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.6,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('await',)",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('test_client',)",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('mkdir',)",
|
||||
"methods": 5,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.8,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('ef',)",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('lask(',)",
|
||||
"methods": 5,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.8,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('get_flashed_messages',)",
|
||||
"methods": 5,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.8,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('import',)",
|
||||
"methods": 4,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('join',)",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('is',)",
|
||||
"methods": 4,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('write_text',)",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('em(sys.',)",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('setenv',)",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('ain_m',)",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('post',)",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('get_db',)",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('getLogger',)",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('getattr',)",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('setattr',)",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('rom',)",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('nvoke(',)",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('update',)",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('t',)",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('lask.u',)",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('ndpoin',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "ndpoin",
|
||||
"sore_success": true
|
||||
}
|
||||
],
|
||||
"coverage": 1.4,
|
||||
"elapsed_seconds": 0.07,
|
||||
"merge_info": {
|
||||
"merges": {
|
||||
"iterations": 1,
|
||||
"merges": 0,
|
||||
"comparisons": 4095,
|
||||
"contexts_before": 228,
|
||||
"contexts_after": 228,
|
||||
"threshold": 0.2,
|
||||
"merge_log": []
|
||||
},
|
||||
"threshold": 0.2,
|
||||
"contexts_before": 228,
|
||||
"contexts_after": 228
|
||||
}
|
||||
}
|
||||
456
experiments/results/flask_reduce_k1_e03.json
Normal file
456
experiments/results/flask_reduce_k1_e03.json
Normal file
|
|
@ -0,0 +1,456 @@
|
|||
{
|
||||
"strategy": "Reduce k=1 \u03b5=0.3",
|
||||
"total_contexts": 228,
|
||||
"meaningful_contexts": 53,
|
||||
"total_methods": 1391,
|
||||
"methods_in_good_groups": 19,
|
||||
"sore_successes": 2,
|
||||
"sore_failures": 14,
|
||||
"skip_reasons": {
|
||||
"too_large": 5,
|
||||
"too_diverse": 29,
|
||||
"large_alphabet": 3
|
||||
},
|
||||
"groups": [
|
||||
{
|
||||
"context": "('return',)",
|
||||
"methods": 393,
|
||||
"unique": 88,
|
||||
"unique_ratio": 0.224,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if',)",
|
||||
"methods": 116,
|
||||
"unique": 109,
|
||||
"unique_ratio": 0.94,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@',)",
|
||||
"methods": 110,
|
||||
"unique": 102,
|
||||
"unique_ratio": 0.927,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise',)",
|
||||
"methods": 60,
|
||||
"unique": 27,
|
||||
"unique_ratio": 0.45,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('append',)",
|
||||
"methods": 51,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.059,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('class',)",
|
||||
"methods": 47,
|
||||
"unique": 45,
|
||||
"unique_ratio": 0.957,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('Blueprint',)",
|
||||
"methods": 40,
|
||||
"unique": 37,
|
||||
"unique_ratio": 0.925,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('def',)",
|
||||
"methods": 38,
|
||||
"unique": 36,
|
||||
"unique_ratio": 0.947,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('get',)",
|
||||
"methods": 25,
|
||||
"unique": 24,
|
||||
"unique_ratio": 0.96,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('Flask',)",
|
||||
"methods": 23,
|
||||
"unique": 23,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('isinstance',)",
|
||||
"methods": 17,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.353,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('abort',)",
|
||||
"methods": 16,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.062,
|
||||
"sore": "(abort)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('setdefault',)",
|
||||
"methods": 14,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.429,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('pop',)",
|
||||
"methods": 13,
|
||||
"unique": 5,
|
||||
"unique_ratio": 0.385,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('try',)",
|
||||
"methods": 13,
|
||||
"unique": 13,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('for',)",
|
||||
"methods": 12,
|
||||
"unique": 12,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('from',)",
|
||||
"methods": 12,
|
||||
"unique": 12,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('eturn',)",
|
||||
"methods": 11,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.364,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('super',)",
|
||||
"methods": 10,
|
||||
"unique": 10,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('yield',)",
|
||||
"methods": 9,
|
||||
"unique": 5,
|
||||
"unique_ratio": 0.556,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raises',)",
|
||||
"methods": 8,
|
||||
"unique": 7,
|
||||
"unique_ratio": 0.875,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('name_',)",
|
||||
"methods": 8,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('login',)",
|
||||
"methods": 7,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.857,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('app_context',)",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('_get_current_object',)",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('record_once',)",
|
||||
"methods": 6,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.167,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('cho(',)",
|
||||
"methods": 6,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('not',)",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('or',)",
|
||||
"methods": 5,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.6,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('await',)",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('test_client',)",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('mkdir',)",
|
||||
"methods": 5,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.8,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('ef',)",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('lask(',)",
|
||||
"methods": 5,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.8,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('get_flashed_messages',)",
|
||||
"methods": 5,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.8,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('import',)",
|
||||
"methods": 4,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('join',)",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('is',)",
|
||||
"methods": 4,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('write_text',)",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('em(sys.',)",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('setenv',)",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('ain_m',)",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('post',)",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('get_db',)",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('getLogger',)",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('getattr',)",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('setattr',)",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('rom',)",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('nvoke(',)",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('update',)",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('t',)",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('lask.u',)",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('ndpoin',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "ndpoin",
|
||||
"sore_success": true
|
||||
}
|
||||
],
|
||||
"coverage": 1.4,
|
||||
"elapsed_seconds": 0.06,
|
||||
"merge_info": {
|
||||
"merges": {
|
||||
"iterations": 1,
|
||||
"merges": 0,
|
||||
"comparisons": 4095,
|
||||
"contexts_before": 228,
|
||||
"contexts_after": 228,
|
||||
"threshold": 0.3,
|
||||
"merge_log": []
|
||||
},
|
||||
"threshold": 0.3,
|
||||
"contexts_before": 228,
|
||||
"contexts_after": 228
|
||||
}
|
||||
}
|
||||
456
experiments/results/flask_reduce_k1_e04.json
Normal file
456
experiments/results/flask_reduce_k1_e04.json
Normal file
|
|
@ -0,0 +1,456 @@
|
|||
{
|
||||
"strategy": "Reduce k=1 \u03b5=0.4",
|
||||
"total_contexts": 228,
|
||||
"meaningful_contexts": 53,
|
||||
"total_methods": 1391,
|
||||
"methods_in_good_groups": 19,
|
||||
"sore_successes": 2,
|
||||
"sore_failures": 14,
|
||||
"skip_reasons": {
|
||||
"too_large": 5,
|
||||
"too_diverse": 29,
|
||||
"large_alphabet": 3
|
||||
},
|
||||
"groups": [
|
||||
{
|
||||
"context": "('return',)",
|
||||
"methods": 393,
|
||||
"unique": 88,
|
||||
"unique_ratio": 0.224,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if',)",
|
||||
"methods": 116,
|
||||
"unique": 109,
|
||||
"unique_ratio": 0.94,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@',)",
|
||||
"methods": 110,
|
||||
"unique": 102,
|
||||
"unique_ratio": 0.927,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise',)",
|
||||
"methods": 60,
|
||||
"unique": 27,
|
||||
"unique_ratio": 0.45,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('append',)",
|
||||
"methods": 51,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.059,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('class',)",
|
||||
"methods": 47,
|
||||
"unique": 45,
|
||||
"unique_ratio": 0.957,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('Blueprint',)",
|
||||
"methods": 40,
|
||||
"unique": 37,
|
||||
"unique_ratio": 0.925,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('def',)",
|
||||
"methods": 38,
|
||||
"unique": 36,
|
||||
"unique_ratio": 0.947,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('get',)",
|
||||
"methods": 25,
|
||||
"unique": 24,
|
||||
"unique_ratio": 0.96,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('Flask',)",
|
||||
"methods": 23,
|
||||
"unique": 23,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('isinstance',)",
|
||||
"methods": 17,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.353,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('abort',)",
|
||||
"methods": 16,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.062,
|
||||
"sore": "(abort)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('setdefault',)",
|
||||
"methods": 14,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.429,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('pop',)",
|
||||
"methods": 13,
|
||||
"unique": 5,
|
||||
"unique_ratio": 0.385,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('try',)",
|
||||
"methods": 13,
|
||||
"unique": 13,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('for',)",
|
||||
"methods": 12,
|
||||
"unique": 12,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('from',)",
|
||||
"methods": 12,
|
||||
"unique": 12,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('eturn',)",
|
||||
"methods": 11,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.364,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('super',)",
|
||||
"methods": 10,
|
||||
"unique": 10,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('yield',)",
|
||||
"methods": 9,
|
||||
"unique": 5,
|
||||
"unique_ratio": 0.556,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raises',)",
|
||||
"methods": 8,
|
||||
"unique": 7,
|
||||
"unique_ratio": 0.875,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('name_',)",
|
||||
"methods": 8,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('login',)",
|
||||
"methods": 7,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.857,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('app_context',)",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('_get_current_object',)",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('record_once',)",
|
||||
"methods": 6,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.167,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('cho(',)",
|
||||
"methods": 6,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('not',)",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('or',)",
|
||||
"methods": 5,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.6,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('await',)",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('test_client',)",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('mkdir',)",
|
||||
"methods": 5,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.8,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('ef',)",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('lask(',)",
|
||||
"methods": 5,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.8,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('get_flashed_messages',)",
|
||||
"methods": 5,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.8,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('import',)",
|
||||
"methods": 4,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('join',)",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('is',)",
|
||||
"methods": 4,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('write_text',)",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('em(sys.',)",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('setenv',)",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('ain_m',)",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('post',)",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('get_db',)",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('getLogger',)",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('getattr',)",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('setattr',)",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('rom',)",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('nvoke(',)",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('update',)",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('t',)",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('lask.u',)",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('ndpoin',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "ndpoin",
|
||||
"sore_success": true
|
||||
}
|
||||
],
|
||||
"coverage": 1.4,
|
||||
"elapsed_seconds": 0.04,
|
||||
"merge_info": {
|
||||
"merges": {
|
||||
"iterations": 1,
|
||||
"merges": 0,
|
||||
"comparisons": 4095,
|
||||
"contexts_before": 228,
|
||||
"contexts_after": 228,
|
||||
"threshold": 0.4,
|
||||
"merge_log": []
|
||||
},
|
||||
"threshold": 0.4,
|
||||
"contexts_before": 228,
|
||||
"contexts_after": 228
|
||||
}
|
||||
}
|
||||
800
experiments/results/flask_reduce_k2_e005.json
Normal file
800
experiments/results/flask_reduce_k2_e005.json
Normal file
|
|
@ -0,0 +1,800 @@
|
|||
{
|
||||
"strategy": "Reduce k=2 \u03b5=0.05",
|
||||
"total_contexts": 430,
|
||||
"meaningful_contexts": 96,
|
||||
"total_methods": 1391,
|
||||
"methods_in_good_groups": 102,
|
||||
"sore_successes": 18,
|
||||
"sore_failures": 23,
|
||||
"skip_reasons": {
|
||||
"too_large": 3,
|
||||
"too_diverse": 50,
|
||||
"large_alphabet": 2
|
||||
},
|
||||
"groups": [
|
||||
{
|
||||
"context": "('return',)",
|
||||
"methods": 203,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.005,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'route')",
|
||||
"methods": 58,
|
||||
"unique": 53,
|
||||
"unique_ratio": 0.914,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('append', 'append')",
|
||||
"methods": 51,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.059,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('Blueprint', 'Blueprint')",
|
||||
"methods": 40,
|
||||
"unique": 37,
|
||||
"unique_ratio": 0.925,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'render_template')",
|
||||
"methods": 33,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.061,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'is')",
|
||||
"methods": 33,
|
||||
"unique": 30,
|
||||
"unique_ratio": 0.909,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'isinstance')",
|
||||
"methods": 32,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.062,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('class', 'def')",
|
||||
"methods": 30,
|
||||
"unique": 28,
|
||||
"unique_ratio": 0.933,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('get', 'get')",
|
||||
"methods": 25,
|
||||
"unique": 24,
|
||||
"unique_ratio": 0.96,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('Flask', 'Flask')",
|
||||
"methods": 23,
|
||||
"unique": 23,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise',)",
|
||||
"methods": 19,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.053,
|
||||
"sore": "raise",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('isinstance', 'isinstance')",
|
||||
"methods": 17,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.353,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('abort', 'abort')",
|
||||
"methods": 16,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.062,
|
||||
"sore": "(abort)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('setdefault', 'setdefault')",
|
||||
"methods": 14,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.429,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('pop', 'pop')",
|
||||
"methods": 13,
|
||||
"unique": 5,
|
||||
"unique_ratio": 0.385,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'not')",
|
||||
"methods": 13,
|
||||
"unique": 12,
|
||||
"unique_ratio": 0.923,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('for', 'in')",
|
||||
"methods": 12,
|
||||
"unique": 12,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('class', 'class')",
|
||||
"methods": 11,
|
||||
"unique": 11,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('super', 'super')",
|
||||
"methods": 10,
|
||||
"unique": 10,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'is not')",
|
||||
"methods": 10,
|
||||
"unique": 9,
|
||||
"unique_ratio": 0.9,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'return')",
|
||||
"methods": 10,
|
||||
"unique": 10,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'jsonify')",
|
||||
"methods": 10,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.4,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'teardown_request')",
|
||||
"methods": 9,
|
||||
"unique": 8,
|
||||
"unique_ratio": 0.889,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'str')",
|
||||
"methods": 8,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.375,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raises', 'raises')",
|
||||
"methods": 8,
|
||||
"unique": 7,
|
||||
"unique_ratio": 0.875,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('eturn', 'lask(')",
|
||||
"methods": 8,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.125,
|
||||
"sore": "eturn.(lask()+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('name_', 'name_')",
|
||||
"methods": 8,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'get')",
|
||||
"methods": 7,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.429,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('login', 'login')",
|
||||
"methods": 7,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.857,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'isinstance')",
|
||||
"methods": 7,
|
||||
"unique": 7,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'url_for')",
|
||||
"methods": 7,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.143,
|
||||
"sore": "return.(url_for)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('app_context', 'app_context')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('_get_current_object', '_get_current_object')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'callable')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('record_once', 'record_once')",
|
||||
"methods": 6,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.167,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('cho(', 'cho(')",
|
||||
"methods": 6,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'get')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'raise')",
|
||||
"methods": 5,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.8,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', '_method_route')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "return.(_method_route)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('await', 'sleep')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('test_client', 'test_client')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'teardown_appcontext')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise', 'ValueError')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "raise.(ValueError)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('mkdir', 'mkdir')",
|
||||
"methods": 5,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.8,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('lask(', 'lask(')",
|
||||
"methods": 5,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.8,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'dict')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "return.(dict)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('@', 'errorhandler')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('get_flashed_messages', 'get_flashed_messages')",
|
||||
"methods": 5,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.8,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'before_request')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('join', 'join')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'and')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('try', 'import')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise', 'NotImplementedError')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "raise.(NotImplementedError)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('return', 'tag')",
|
||||
"methods": 4,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('def', 'decorator')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('write_text', 'write_text')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('em(sys.', 'em(sys.')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('setenv', 'setenv')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('class', '@')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'render_template_string')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "return.(render_template_string)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('@', 'template_filter')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'template_test')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise', 'Forbidden')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "raise.(Forbidden)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('return', 'Response')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "return.(Response)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('ain_m', 'ain_m')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('post', 'post')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('get_db', 'get_db')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'not in')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'test_client')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "return.(test_client)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('yield',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "yield",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('try', 'return')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('import', 'warnings')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('def', 'wrapper')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'join')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('getLogger', 'getLogger')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'dumps')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('getattr', 'getattr')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'in')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('or',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "or",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('is', 'is not')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise', 'Exception')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "raise.(Exception)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('setattr', 'setattr')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('ef', 'reate_app(')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('nvoke(', 'nvoke(')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('yield', 'yield')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "(yield)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('@', 'stream_with_context')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('update', 'update')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'post')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'get')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'context_processor')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('def', 'my_reverse')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('from', 'blueprintapp')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('from', 'werkzeug')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise', 'InternalServerError')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "raise.(InternalServerError)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('def', 'index')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('ndpoin',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "ndpoin",
|
||||
"sore_success": true
|
||||
}
|
||||
],
|
||||
"coverage": 7.3,
|
||||
"elapsed_seconds": 0.07,
|
||||
"merge_info": {
|
||||
"merges": {
|
||||
"iterations": 1,
|
||||
"merges": 0,
|
||||
"comparisons": 11026,
|
||||
"contexts_before": 430,
|
||||
"contexts_after": 430,
|
||||
"threshold": 0.05,
|
||||
"merge_log": []
|
||||
},
|
||||
"threshold": 0.05,
|
||||
"contexts_before": 430,
|
||||
"contexts_after": 430
|
||||
}
|
||||
}
|
||||
800
experiments/results/flask_reduce_k2_e01.json
Normal file
800
experiments/results/flask_reduce_k2_e01.json
Normal file
|
|
@ -0,0 +1,800 @@
|
|||
{
|
||||
"strategy": "Reduce k=2 \u03b5=0.1",
|
||||
"total_contexts": 430,
|
||||
"meaningful_contexts": 96,
|
||||
"total_methods": 1391,
|
||||
"methods_in_good_groups": 102,
|
||||
"sore_successes": 18,
|
||||
"sore_failures": 23,
|
||||
"skip_reasons": {
|
||||
"too_large": 3,
|
||||
"too_diverse": 50,
|
||||
"large_alphabet": 2
|
||||
},
|
||||
"groups": [
|
||||
{
|
||||
"context": "('return',)",
|
||||
"methods": 203,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.005,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'route')",
|
||||
"methods": 58,
|
||||
"unique": 53,
|
||||
"unique_ratio": 0.914,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('append', 'append')",
|
||||
"methods": 51,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.059,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('Blueprint', 'Blueprint')",
|
||||
"methods": 40,
|
||||
"unique": 37,
|
||||
"unique_ratio": 0.925,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'render_template')",
|
||||
"methods": 33,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.061,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'is')",
|
||||
"methods": 33,
|
||||
"unique": 30,
|
||||
"unique_ratio": 0.909,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'isinstance')",
|
||||
"methods": 32,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.062,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('class', 'def')",
|
||||
"methods": 30,
|
||||
"unique": 28,
|
||||
"unique_ratio": 0.933,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('get', 'get')",
|
||||
"methods": 25,
|
||||
"unique": 24,
|
||||
"unique_ratio": 0.96,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('Flask', 'Flask')",
|
||||
"methods": 23,
|
||||
"unique": 23,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise',)",
|
||||
"methods": 19,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.053,
|
||||
"sore": "raise",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('isinstance', 'isinstance')",
|
||||
"methods": 17,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.353,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('abort', 'abort')",
|
||||
"methods": 16,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.062,
|
||||
"sore": "(abort)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('setdefault', 'setdefault')",
|
||||
"methods": 14,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.429,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('pop', 'pop')",
|
||||
"methods": 13,
|
||||
"unique": 5,
|
||||
"unique_ratio": 0.385,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'not')",
|
||||
"methods": 13,
|
||||
"unique": 12,
|
||||
"unique_ratio": 0.923,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('for', 'in')",
|
||||
"methods": 12,
|
||||
"unique": 12,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('class', 'class')",
|
||||
"methods": 11,
|
||||
"unique": 11,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('super', 'super')",
|
||||
"methods": 10,
|
||||
"unique": 10,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'is not')",
|
||||
"methods": 10,
|
||||
"unique": 9,
|
||||
"unique_ratio": 0.9,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'return')",
|
||||
"methods": 10,
|
||||
"unique": 10,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'jsonify')",
|
||||
"methods": 10,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.4,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'teardown_request')",
|
||||
"methods": 9,
|
||||
"unique": 8,
|
||||
"unique_ratio": 0.889,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'str')",
|
||||
"methods": 8,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.375,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raises', 'raises')",
|
||||
"methods": 8,
|
||||
"unique": 7,
|
||||
"unique_ratio": 0.875,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('eturn', 'lask(')",
|
||||
"methods": 8,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.125,
|
||||
"sore": "eturn.(lask()+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('name_', 'name_')",
|
||||
"methods": 8,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'get')",
|
||||
"methods": 7,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.429,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('login', 'login')",
|
||||
"methods": 7,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.857,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'isinstance')",
|
||||
"methods": 7,
|
||||
"unique": 7,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'url_for')",
|
||||
"methods": 7,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.143,
|
||||
"sore": "return.(url_for)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('app_context', 'app_context')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('_get_current_object', '_get_current_object')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'callable')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('record_once', 'record_once')",
|
||||
"methods": 6,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.167,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('cho(', 'cho(')",
|
||||
"methods": 6,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'get')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'raise')",
|
||||
"methods": 5,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.8,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', '_method_route')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "return.(_method_route)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('await', 'sleep')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('test_client', 'test_client')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'teardown_appcontext')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise', 'ValueError')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "raise.(ValueError)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('mkdir', 'mkdir')",
|
||||
"methods": 5,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.8,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('lask(', 'lask(')",
|
||||
"methods": 5,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.8,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'dict')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "return.(dict)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('@', 'errorhandler')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('get_flashed_messages', 'get_flashed_messages')",
|
||||
"methods": 5,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.8,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'before_request')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('join', 'join')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'and')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('try', 'import')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise', 'NotImplementedError')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "raise.(NotImplementedError)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('return', 'tag')",
|
||||
"methods": 4,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('def', 'decorator')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('write_text', 'write_text')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('em(sys.', 'em(sys.')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('setenv', 'setenv')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('class', '@')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'render_template_string')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "return.(render_template_string)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('@', 'template_filter')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'template_test')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise', 'Forbidden')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "raise.(Forbidden)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('return', 'Response')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "return.(Response)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('ain_m', 'ain_m')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('post', 'post')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('get_db', 'get_db')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'not in')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'test_client')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "return.(test_client)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('yield',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "yield",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('try', 'return')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('import', 'warnings')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('def', 'wrapper')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'join')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('getLogger', 'getLogger')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'dumps')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('getattr', 'getattr')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'in')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('or',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "or",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('is', 'is not')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise', 'Exception')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "raise.(Exception)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('setattr', 'setattr')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('ef', 'reate_app(')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('nvoke(', 'nvoke(')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('yield', 'yield')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "(yield)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('@', 'stream_with_context')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('update', 'update')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'post')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'get')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'context_processor')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('def', 'my_reverse')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('from', 'blueprintapp')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('from', 'werkzeug')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise', 'InternalServerError')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "raise.(InternalServerError)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('def', 'index')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('ndpoin',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "ndpoin",
|
||||
"sore_success": true
|
||||
}
|
||||
],
|
||||
"coverage": 7.3,
|
||||
"elapsed_seconds": 0.05,
|
||||
"merge_info": {
|
||||
"merges": {
|
||||
"iterations": 1,
|
||||
"merges": 0,
|
||||
"comparisons": 11026,
|
||||
"contexts_before": 430,
|
||||
"contexts_after": 430,
|
||||
"threshold": 0.1,
|
||||
"merge_log": []
|
||||
},
|
||||
"threshold": 0.1,
|
||||
"contexts_before": 430,
|
||||
"contexts_after": 430
|
||||
}
|
||||
}
|
||||
800
experiments/results/flask_reduce_k2_e015.json
Normal file
800
experiments/results/flask_reduce_k2_e015.json
Normal file
|
|
@ -0,0 +1,800 @@
|
|||
{
|
||||
"strategy": "Reduce k=2 \u03b5=0.15",
|
||||
"total_contexts": 430,
|
||||
"meaningful_contexts": 96,
|
||||
"total_methods": 1391,
|
||||
"methods_in_good_groups": 102,
|
||||
"sore_successes": 18,
|
||||
"sore_failures": 23,
|
||||
"skip_reasons": {
|
||||
"too_large": 3,
|
||||
"too_diverse": 50,
|
||||
"large_alphabet": 2
|
||||
},
|
||||
"groups": [
|
||||
{
|
||||
"context": "('return',)",
|
||||
"methods": 203,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.005,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'route')",
|
||||
"methods": 58,
|
||||
"unique": 53,
|
||||
"unique_ratio": 0.914,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('append', 'append')",
|
||||
"methods": 51,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.059,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('Blueprint', 'Blueprint')",
|
||||
"methods": 40,
|
||||
"unique": 37,
|
||||
"unique_ratio": 0.925,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'render_template')",
|
||||
"methods": 33,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.061,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'is')",
|
||||
"methods": 33,
|
||||
"unique": 30,
|
||||
"unique_ratio": 0.909,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'isinstance')",
|
||||
"methods": 32,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.062,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('class', 'def')",
|
||||
"methods": 30,
|
||||
"unique": 28,
|
||||
"unique_ratio": 0.933,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('get', 'get')",
|
||||
"methods": 25,
|
||||
"unique": 24,
|
||||
"unique_ratio": 0.96,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('Flask', 'Flask')",
|
||||
"methods": 23,
|
||||
"unique": 23,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise',)",
|
||||
"methods": 19,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.053,
|
||||
"sore": "raise",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('isinstance', 'isinstance')",
|
||||
"methods": 17,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.353,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('abort', 'abort')",
|
||||
"methods": 16,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.062,
|
||||
"sore": "(abort)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('setdefault', 'setdefault')",
|
||||
"methods": 14,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.429,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('pop', 'pop')",
|
||||
"methods": 13,
|
||||
"unique": 5,
|
||||
"unique_ratio": 0.385,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'not')",
|
||||
"methods": 13,
|
||||
"unique": 12,
|
||||
"unique_ratio": 0.923,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('for', 'in')",
|
||||
"methods": 12,
|
||||
"unique": 12,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('class', 'class')",
|
||||
"methods": 11,
|
||||
"unique": 11,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('super', 'super')",
|
||||
"methods": 10,
|
||||
"unique": 10,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'is not')",
|
||||
"methods": 10,
|
||||
"unique": 9,
|
||||
"unique_ratio": 0.9,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'return')",
|
||||
"methods": 10,
|
||||
"unique": 10,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'jsonify')",
|
||||
"methods": 10,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.4,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'teardown_request')",
|
||||
"methods": 9,
|
||||
"unique": 8,
|
||||
"unique_ratio": 0.889,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'str')",
|
||||
"methods": 8,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.375,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raises', 'raises')",
|
||||
"methods": 8,
|
||||
"unique": 7,
|
||||
"unique_ratio": 0.875,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('eturn', 'lask(')",
|
||||
"methods": 8,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.125,
|
||||
"sore": "eturn.(lask()+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('name_', 'name_')",
|
||||
"methods": 8,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'get')",
|
||||
"methods": 7,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.429,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('login', 'login')",
|
||||
"methods": 7,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.857,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'isinstance')",
|
||||
"methods": 7,
|
||||
"unique": 7,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'url_for')",
|
||||
"methods": 7,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.143,
|
||||
"sore": "return.(url_for)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('app_context', 'app_context')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('_get_current_object', '_get_current_object')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'callable')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('record_once', 'record_once')",
|
||||
"methods": 6,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.167,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('cho(', 'cho(')",
|
||||
"methods": 6,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'get')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'raise')",
|
||||
"methods": 5,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.8,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', '_method_route')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "return.(_method_route)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('await', 'sleep')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('test_client', 'test_client')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'teardown_appcontext')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise', 'ValueError')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "raise.(ValueError)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('mkdir', 'mkdir')",
|
||||
"methods": 5,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.8,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('lask(', 'lask(')",
|
||||
"methods": 5,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.8,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'dict')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "return.(dict)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('@', 'errorhandler')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('get_flashed_messages', 'get_flashed_messages')",
|
||||
"methods": 5,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.8,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'before_request')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('join', 'join')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'and')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('try', 'import')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise', 'NotImplementedError')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "raise.(NotImplementedError)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('return', 'tag')",
|
||||
"methods": 4,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('def', 'decorator')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('write_text', 'write_text')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('em(sys.', 'em(sys.')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('setenv', 'setenv')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('class', '@')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'render_template_string')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "return.(render_template_string)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('@', 'template_filter')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'template_test')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise', 'Forbidden')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "raise.(Forbidden)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('return', 'Response')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "return.(Response)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('ain_m', 'ain_m')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('post', 'post')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('get_db', 'get_db')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'not in')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'test_client')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "return.(test_client)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('yield',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "yield",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('try', 'return')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('import', 'warnings')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('def', 'wrapper')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'join')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('getLogger', 'getLogger')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'dumps')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('getattr', 'getattr')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'in')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('or',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "or",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('is', 'is not')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise', 'Exception')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "raise.(Exception)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('setattr', 'setattr')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('ef', 'reate_app(')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('nvoke(', 'nvoke(')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('yield', 'yield')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "(yield)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('@', 'stream_with_context')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('update', 'update')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'post')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'get')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'context_processor')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('def', 'my_reverse')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('from', 'blueprintapp')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('from', 'werkzeug')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise', 'InternalServerError')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "raise.(InternalServerError)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('def', 'index')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('ndpoin',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "ndpoin",
|
||||
"sore_success": true
|
||||
}
|
||||
],
|
||||
"coverage": 7.3,
|
||||
"elapsed_seconds": 0.05,
|
||||
"merge_info": {
|
||||
"merges": {
|
||||
"iterations": 1,
|
||||
"merges": 0,
|
||||
"comparisons": 11026,
|
||||
"contexts_before": 430,
|
||||
"contexts_after": 430,
|
||||
"threshold": 0.15,
|
||||
"merge_log": []
|
||||
},
|
||||
"threshold": 0.15,
|
||||
"contexts_before": 430,
|
||||
"contexts_after": 430
|
||||
}
|
||||
}
|
||||
800
experiments/results/flask_reduce_k2_e02.json
Normal file
800
experiments/results/flask_reduce_k2_e02.json
Normal file
|
|
@ -0,0 +1,800 @@
|
|||
{
|
||||
"strategy": "Reduce k=2 \u03b5=0.2",
|
||||
"total_contexts": 430,
|
||||
"meaningful_contexts": 96,
|
||||
"total_methods": 1391,
|
||||
"methods_in_good_groups": 102,
|
||||
"sore_successes": 18,
|
||||
"sore_failures": 23,
|
||||
"skip_reasons": {
|
||||
"too_large": 3,
|
||||
"too_diverse": 50,
|
||||
"large_alphabet": 2
|
||||
},
|
||||
"groups": [
|
||||
{
|
||||
"context": "('return',)",
|
||||
"methods": 203,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.005,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'route')",
|
||||
"methods": 58,
|
||||
"unique": 53,
|
||||
"unique_ratio": 0.914,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('append', 'append')",
|
||||
"methods": 51,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.059,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('Blueprint', 'Blueprint')",
|
||||
"methods": 40,
|
||||
"unique": 37,
|
||||
"unique_ratio": 0.925,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'render_template')",
|
||||
"methods": 33,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.061,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'is')",
|
||||
"methods": 33,
|
||||
"unique": 30,
|
||||
"unique_ratio": 0.909,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'isinstance')",
|
||||
"methods": 32,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.062,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('class', 'def')",
|
||||
"methods": 30,
|
||||
"unique": 28,
|
||||
"unique_ratio": 0.933,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('get', 'get')",
|
||||
"methods": 25,
|
||||
"unique": 24,
|
||||
"unique_ratio": 0.96,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('Flask', 'Flask')",
|
||||
"methods": 23,
|
||||
"unique": 23,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise',)",
|
||||
"methods": 19,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.053,
|
||||
"sore": "raise",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('isinstance', 'isinstance')",
|
||||
"methods": 17,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.353,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('abort', 'abort')",
|
||||
"methods": 16,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.062,
|
||||
"sore": "(abort)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('setdefault', 'setdefault')",
|
||||
"methods": 14,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.429,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('pop', 'pop')",
|
||||
"methods": 13,
|
||||
"unique": 5,
|
||||
"unique_ratio": 0.385,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'not')",
|
||||
"methods": 13,
|
||||
"unique": 12,
|
||||
"unique_ratio": 0.923,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('for', 'in')",
|
||||
"methods": 12,
|
||||
"unique": 12,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('class', 'class')",
|
||||
"methods": 11,
|
||||
"unique": 11,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('super', 'super')",
|
||||
"methods": 10,
|
||||
"unique": 10,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'is not')",
|
||||
"methods": 10,
|
||||
"unique": 9,
|
||||
"unique_ratio": 0.9,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'return')",
|
||||
"methods": 10,
|
||||
"unique": 10,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'jsonify')",
|
||||
"methods": 10,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.4,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'teardown_request')",
|
||||
"methods": 9,
|
||||
"unique": 8,
|
||||
"unique_ratio": 0.889,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'str')",
|
||||
"methods": 8,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.375,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raises', 'raises')",
|
||||
"methods": 8,
|
||||
"unique": 7,
|
||||
"unique_ratio": 0.875,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('eturn', 'lask(')",
|
||||
"methods": 8,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.125,
|
||||
"sore": "eturn.(lask()+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('name_', 'name_')",
|
||||
"methods": 8,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'get')",
|
||||
"methods": 7,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.429,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('login', 'login')",
|
||||
"methods": 7,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.857,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'isinstance')",
|
||||
"methods": 7,
|
||||
"unique": 7,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'url_for')",
|
||||
"methods": 7,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.143,
|
||||
"sore": "return.(url_for)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('app_context', 'app_context')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('_get_current_object', '_get_current_object')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'callable')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('record_once', 'record_once')",
|
||||
"methods": 6,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.167,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('cho(', 'cho(')",
|
||||
"methods": 6,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'get')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'raise')",
|
||||
"methods": 5,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.8,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', '_method_route')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "return.(_method_route)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('await', 'sleep')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('test_client', 'test_client')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'teardown_appcontext')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise', 'ValueError')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "raise.(ValueError)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('mkdir', 'mkdir')",
|
||||
"methods": 5,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.8,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('lask(', 'lask(')",
|
||||
"methods": 5,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.8,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'dict')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "return.(dict)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('@', 'errorhandler')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('get_flashed_messages', 'get_flashed_messages')",
|
||||
"methods": 5,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.8,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'before_request')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('join', 'join')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'and')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('try', 'import')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise', 'NotImplementedError')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "raise.(NotImplementedError)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('return', 'tag')",
|
||||
"methods": 4,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('def', 'decorator')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('write_text', 'write_text')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('em(sys.', 'em(sys.')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('setenv', 'setenv')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('class', '@')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'render_template_string')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "return.(render_template_string)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('@', 'template_filter')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'template_test')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise', 'Forbidden')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "raise.(Forbidden)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('return', 'Response')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "return.(Response)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('ain_m', 'ain_m')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('post', 'post')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('get_db', 'get_db')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'not in')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'test_client')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "return.(test_client)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('yield',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "yield",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('try', 'return')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('import', 'warnings')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('def', 'wrapper')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'join')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('getLogger', 'getLogger')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'dumps')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('getattr', 'getattr')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'in')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('or',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "or",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('is', 'is not')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise', 'Exception')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "raise.(Exception)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('setattr', 'setattr')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('ef', 'reate_app(')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('nvoke(', 'nvoke(')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('yield', 'yield')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "(yield)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('@', 'stream_with_context')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('update', 'update')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'post')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'get')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'context_processor')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('def', 'my_reverse')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('from', 'blueprintapp')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('from', 'werkzeug')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise', 'InternalServerError')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "raise.(InternalServerError)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('def', 'index')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('ndpoin',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "ndpoin",
|
||||
"sore_success": true
|
||||
}
|
||||
],
|
||||
"coverage": 7.3,
|
||||
"elapsed_seconds": 0.12,
|
||||
"merge_info": {
|
||||
"merges": {
|
||||
"iterations": 1,
|
||||
"merges": 0,
|
||||
"comparisons": 11026,
|
||||
"contexts_before": 430,
|
||||
"contexts_after": 430,
|
||||
"threshold": 0.2,
|
||||
"merge_log": []
|
||||
},
|
||||
"threshold": 0.2,
|
||||
"contexts_before": 430,
|
||||
"contexts_after": 430
|
||||
}
|
||||
}
|
||||
816
experiments/results/flask_reduce_k2_e03.json
Normal file
816
experiments/results/flask_reduce_k2_e03.json
Normal file
|
|
@ -0,0 +1,816 @@
|
|||
{
|
||||
"strategy": "Reduce k=2 \u03b5=0.3",
|
||||
"total_contexts": 430,
|
||||
"meaningful_contexts": 97,
|
||||
"total_methods": 1393,
|
||||
"methods_in_good_groups": 102,
|
||||
"sore_successes": 18,
|
||||
"sore_failures": 23,
|
||||
"skip_reasons": {
|
||||
"too_large": 3,
|
||||
"too_diverse": 51,
|
||||
"large_alphabet": 2
|
||||
},
|
||||
"groups": [
|
||||
{
|
||||
"context": "('return',)",
|
||||
"methods": 203,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.005,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'route')",
|
||||
"methods": 58,
|
||||
"unique": 53,
|
||||
"unique_ratio": 0.914,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('append', 'append')",
|
||||
"methods": 51,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.059,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('Blueprint', 'Blueprint')",
|
||||
"methods": 40,
|
||||
"unique": 37,
|
||||
"unique_ratio": 0.925,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'render_template')",
|
||||
"methods": 33,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.061,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'is')",
|
||||
"methods": 33,
|
||||
"unique": 30,
|
||||
"unique_ratio": 0.909,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'isinstance')",
|
||||
"methods": 32,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.062,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('class', 'def')",
|
||||
"methods": 30,
|
||||
"unique": 28,
|
||||
"unique_ratio": 0.933,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('get', 'get')",
|
||||
"methods": 25,
|
||||
"unique": 24,
|
||||
"unique_ratio": 0.96,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('Flask', 'Flask')",
|
||||
"methods": 23,
|
||||
"unique": 23,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise',)",
|
||||
"methods": 19,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.053,
|
||||
"sore": "raise",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('isinstance', 'isinstance')",
|
||||
"methods": 17,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.353,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('abort', 'abort')",
|
||||
"methods": 16,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.062,
|
||||
"sore": "(abort)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('setdefault', 'setdefault')",
|
||||
"methods": 14,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.429,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('pop', 'pop')",
|
||||
"methods": 13,
|
||||
"unique": 5,
|
||||
"unique_ratio": 0.385,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'not')",
|
||||
"methods": 13,
|
||||
"unique": 12,
|
||||
"unique_ratio": 0.923,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('for', 'in')",
|
||||
"methods": 12,
|
||||
"unique": 12,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('class', 'class')",
|
||||
"methods": 11,
|
||||
"unique": 11,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('super', 'super')",
|
||||
"methods": 10,
|
||||
"unique": 10,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'is not')",
|
||||
"methods": 10,
|
||||
"unique": 9,
|
||||
"unique_ratio": 0.9,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'return')",
|
||||
"methods": 10,
|
||||
"unique": 10,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'jsonify')",
|
||||
"methods": 10,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.4,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'teardown_request')",
|
||||
"methods": 9,
|
||||
"unique": 8,
|
||||
"unique_ratio": 0.889,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'str')",
|
||||
"methods": 8,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.375,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raises', 'raises')",
|
||||
"methods": 8,
|
||||
"unique": 7,
|
||||
"unique_ratio": 0.875,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('eturn', 'lask(')",
|
||||
"methods": 8,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.125,
|
||||
"sore": "eturn.(lask()+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('name_', 'name_')",
|
||||
"methods": 8,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'get')",
|
||||
"methods": 7,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.429,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('login', 'login')",
|
||||
"methods": 7,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.857,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'isinstance')",
|
||||
"methods": 7,
|
||||
"unique": 7,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'url_for')",
|
||||
"methods": 7,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.143,
|
||||
"sore": "return.(url_for)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('app_context', 'app_context')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('_get_current_object', '_get_current_object')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'callable')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('record_once', 'record_once')",
|
||||
"methods": 6,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.167,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('cho(', 'cho(')",
|
||||
"methods": 6,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'get')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'raise')",
|
||||
"methods": 5,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.8,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', '_method_route')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "return.(_method_route)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('await', 'sleep')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('test_client', 'test_client')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'teardown_appcontext')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise', 'ValueError')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "raise.(ValueError)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('mkdir', 'mkdir')",
|
||||
"methods": 5,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.8,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('lask(', 'lask(')",
|
||||
"methods": 5,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.8,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'dict')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "return.(dict)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('@', 'errorhandler')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('get_flashed_messages', 'get_flashed_messages')",
|
||||
"methods": 5,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.8,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'before_request')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('join', 'join')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'and')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('try', 'import')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise', 'NotImplementedError')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "raise.(NotImplementedError)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('return', 'tag')",
|
||||
"methods": 4,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('def', 'decorator')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('write_text', 'write_text')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('em(sys.', 'em(sys.')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('setenv', 'setenv')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('class', '@')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'render_template_string')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "return.(render_template_string)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('@', 'template_filter')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'template_test')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('def', 'boolean')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise', 'Forbidden')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "raise.(Forbidden)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('return', 'Response')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "return.(Response)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('ain_m', 'ain_m')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('post', 'post')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('get_db', 'get_db')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'not in')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'test_client')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "return.(test_client)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('yield',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "yield",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('try', 'return')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('import', 'warnings')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('def', 'wrapper')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'join')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('getLogger', 'getLogger')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'dumps')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('getattr', 'getattr')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'in')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('or',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "or",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('is', 'is not')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise', 'Exception')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "raise.(Exception)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('setattr', 'setattr')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('ef', 'reate_app(')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('nvoke(', 'nvoke(')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('yield', 'yield')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "(yield)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('@', 'stream_with_context')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('update', 'update')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'post')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'get')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'context_processor')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('def', 'my_reverse')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('from', 'blueprintapp')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('from', 'werkzeug')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise', 'InternalServerError')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "raise.(InternalServerError)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('def', 'index')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('ndpoin',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "ndpoin",
|
||||
"sore_success": true
|
||||
}
|
||||
],
|
||||
"coverage": 7.3,
|
||||
"elapsed_seconds": 0.05,
|
||||
"merge_info": {
|
||||
"merges": {
|
||||
"iterations": 2,
|
||||
"merges": 1,
|
||||
"comparisons": 21904,
|
||||
"contexts_before": 430,
|
||||
"contexts_after": 430,
|
||||
"threshold": 0.3,
|
||||
"merge_log": [
|
||||
{
|
||||
"iteration": 1,
|
||||
"merged_into": "('def', 'boolean')",
|
||||
"removed": "('def', 'is_boolean')",
|
||||
"distance": 0.2424,
|
||||
"new_size": 4
|
||||
}
|
||||
]
|
||||
},
|
||||
"threshold": 0.3,
|
||||
"contexts_before": 430,
|
||||
"contexts_after": 430
|
||||
}
|
||||
}
|
||||
816
experiments/results/flask_reduce_k2_e04.json
Normal file
816
experiments/results/flask_reduce_k2_e04.json
Normal file
|
|
@ -0,0 +1,816 @@
|
|||
{
|
||||
"strategy": "Reduce k=2 \u03b5=0.4",
|
||||
"total_contexts": 430,
|
||||
"meaningful_contexts": 97,
|
||||
"total_methods": 1393,
|
||||
"methods_in_good_groups": 102,
|
||||
"sore_successes": 18,
|
||||
"sore_failures": 23,
|
||||
"skip_reasons": {
|
||||
"too_large": 3,
|
||||
"too_diverse": 51,
|
||||
"large_alphabet": 2
|
||||
},
|
||||
"groups": [
|
||||
{
|
||||
"context": "('return',)",
|
||||
"methods": 203,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.005,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'route')",
|
||||
"methods": 58,
|
||||
"unique": 53,
|
||||
"unique_ratio": 0.914,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('append', 'append')",
|
||||
"methods": 51,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.059,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('Blueprint', 'Blueprint')",
|
||||
"methods": 40,
|
||||
"unique": 37,
|
||||
"unique_ratio": 0.925,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'render_template')",
|
||||
"methods": 33,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.061,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'is')",
|
||||
"methods": 33,
|
||||
"unique": 30,
|
||||
"unique_ratio": 0.909,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'isinstance')",
|
||||
"methods": 32,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.062,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('class', 'def')",
|
||||
"methods": 30,
|
||||
"unique": 28,
|
||||
"unique_ratio": 0.933,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('get', 'get')",
|
||||
"methods": 25,
|
||||
"unique": 24,
|
||||
"unique_ratio": 0.96,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('Flask', 'Flask')",
|
||||
"methods": 23,
|
||||
"unique": 23,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise',)",
|
||||
"methods": 19,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.053,
|
||||
"sore": "raise",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('isinstance', 'isinstance')",
|
||||
"methods": 17,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.353,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('abort', 'abort')",
|
||||
"methods": 16,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.062,
|
||||
"sore": "(abort)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('setdefault', 'setdefault')",
|
||||
"methods": 14,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.429,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('pop', 'pop')",
|
||||
"methods": 13,
|
||||
"unique": 5,
|
||||
"unique_ratio": 0.385,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'not')",
|
||||
"methods": 13,
|
||||
"unique": 12,
|
||||
"unique_ratio": 0.923,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('for', 'in')",
|
||||
"methods": 12,
|
||||
"unique": 12,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('class', 'class')",
|
||||
"methods": 11,
|
||||
"unique": 11,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('super', 'super')",
|
||||
"methods": 10,
|
||||
"unique": 10,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'is not')",
|
||||
"methods": 10,
|
||||
"unique": 9,
|
||||
"unique_ratio": 0.9,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'return')",
|
||||
"methods": 10,
|
||||
"unique": 10,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'jsonify')",
|
||||
"methods": 10,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.4,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'teardown_request')",
|
||||
"methods": 9,
|
||||
"unique": 8,
|
||||
"unique_ratio": 0.889,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'str')",
|
||||
"methods": 8,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.375,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raises', 'raises')",
|
||||
"methods": 8,
|
||||
"unique": 7,
|
||||
"unique_ratio": 0.875,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('eturn', 'lask(')",
|
||||
"methods": 8,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.125,
|
||||
"sore": "eturn.(lask()+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('name_', 'name_')",
|
||||
"methods": 8,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'get')",
|
||||
"methods": 7,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.429,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('login', 'login')",
|
||||
"methods": 7,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.857,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'isinstance')",
|
||||
"methods": 7,
|
||||
"unique": 7,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'url_for')",
|
||||
"methods": 7,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.143,
|
||||
"sore": "return.(url_for)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('app_context', 'app_context')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('_get_current_object', '_get_current_object')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'callable')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('record_once', 'record_once')",
|
||||
"methods": 6,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.167,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('cho(', 'cho(')",
|
||||
"methods": 6,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'get')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'raise')",
|
||||
"methods": 5,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.8,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', '_method_route')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "return.(_method_route)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('await', 'sleep')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('test_client', 'test_client')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'teardown_appcontext')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise', 'ValueError')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "raise.(ValueError)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('mkdir', 'mkdir')",
|
||||
"methods": 5,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.8,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('lask(', 'lask(')",
|
||||
"methods": 5,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.8,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'dict')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "return.(dict)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('@', 'errorhandler')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('get_flashed_messages', 'get_flashed_messages')",
|
||||
"methods": 5,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.8,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'before_request')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('join', 'join')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'and')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('try', 'import')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise', 'NotImplementedError')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "raise.(NotImplementedError)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('return', 'tag')",
|
||||
"methods": 4,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('def', 'decorator')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('write_text', 'write_text')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('em(sys.', 'em(sys.')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('setenv', 'setenv')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('class', '@')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'render_template_string')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "return.(render_template_string)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('@', 'template_filter')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'template_test')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('def', 'boolean')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise', 'Forbidden')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "raise.(Forbidden)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('return', 'Response')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "return.(Response)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('ain_m', 'ain_m')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('post', 'post')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('get_db', 'get_db')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'not in')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'test_client')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "return.(test_client)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('yield',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "yield",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('try', 'return')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('import', 'warnings')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('def', 'wrapper')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'join')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('getLogger', 'getLogger')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'dumps')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('getattr', 'getattr')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'in')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('or',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "or",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('is', 'is not')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise', 'Exception')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "raise.(Exception)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('setattr', 'setattr')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('ef', 'reate_app(')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('nvoke(', 'nvoke(')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('yield', 'yield')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "(yield)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('@', 'stream_with_context')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('update', 'update')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'post')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'get')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'context_processor')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('def', 'my_reverse')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('from', 'blueprintapp')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('from', 'werkzeug')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise', 'InternalServerError')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "raise.(InternalServerError)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('def', 'index')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('ndpoin',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "ndpoin",
|
||||
"sore_success": true
|
||||
}
|
||||
],
|
||||
"coverage": 7.3,
|
||||
"elapsed_seconds": 0.05,
|
||||
"merge_info": {
|
||||
"merges": {
|
||||
"iterations": 2,
|
||||
"merges": 1,
|
||||
"comparisons": 21904,
|
||||
"contexts_before": 430,
|
||||
"contexts_after": 430,
|
||||
"threshold": 0.4,
|
||||
"merge_log": [
|
||||
{
|
||||
"iteration": 1,
|
||||
"merged_into": "('def', 'boolean')",
|
||||
"removed": "('def', 'is_boolean')",
|
||||
"distance": 0.2424,
|
||||
"new_size": 4
|
||||
}
|
||||
]
|
||||
},
|
||||
"threshold": 0.4,
|
||||
"contexts_before": 430,
|
||||
"contexts_after": 430
|
||||
}
|
||||
}
|
||||
712
experiments/results/flask_reduce_k3_e005.json
Normal file
712
experiments/results/flask_reduce_k3_e005.json
Normal file
|
|
@ -0,0 +1,712 @@
|
|||
{
|
||||
"strategy": "Reduce k=3 \u03b5=0.05",
|
||||
"total_contexts": 598,
|
||||
"meaningful_contexts": 85,
|
||||
"total_methods": 1391,
|
||||
"methods_in_good_groups": 149,
|
||||
"sore_successes": 21,
|
||||
"sore_failures": 23,
|
||||
"skip_reasons": {
|
||||
"too_large": 2,
|
||||
"too_diverse": 38,
|
||||
"large_alphabet": 1
|
||||
},
|
||||
"groups": [
|
||||
{
|
||||
"context": "('return',)",
|
||||
"methods": 203,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.005,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'route', 'route')",
|
||||
"methods": 58,
|
||||
"unique": 53,
|
||||
"unique_ratio": 0.914,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'render_template', 'render_template')",
|
||||
"methods": 33,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.061,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('append', 'append')",
|
||||
"methods": 33,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.03,
|
||||
"sore": "(append)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('return', 'isinstance', 'isinstance')",
|
||||
"methods": 32,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.062,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('Blueprint', 'Blueprint', '@')",
|
||||
"methods": 21,
|
||||
"unique": 21,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise',)",
|
||||
"methods": 19,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.053,
|
||||
"sore": "raise",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('isinstance', 'isinstance', 'isinstance')",
|
||||
"methods": 17,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.353,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('append', 'append', 'return')",
|
||||
"methods": 17,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.059,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('abort', 'abort')",
|
||||
"methods": 16,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.062,
|
||||
"sore": "(abort)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('if', 'is', 'return')",
|
||||
"methods": 10,
|
||||
"unique": 9,
|
||||
"unique_ratio": 0.9,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('super', 'super', 'super')",
|
||||
"methods": 10,
|
||||
"unique": 10,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'is not', 'is')",
|
||||
"methods": 10,
|
||||
"unique": 9,
|
||||
"unique_ratio": 0.9,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'jsonify', 'jsonify')",
|
||||
"methods": 10,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.4,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('get', 'get', 'if')",
|
||||
"methods": 9,
|
||||
"unique": 9,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'is', 'is not')",
|
||||
"methods": 9,
|
||||
"unique": 9,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('pop', 'pop')",
|
||||
"methods": 9,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.111,
|
||||
"sore": "(pop)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('setdefault', 'setdefault', 'append')",
|
||||
"methods": 9,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.222,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'teardown_request', 'def')",
|
||||
"methods": 9,
|
||||
"unique": 8,
|
||||
"unique_ratio": 0.889,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('Blueprint', 'Blueprint', 'def')",
|
||||
"methods": 9,
|
||||
"unique": 7,
|
||||
"unique_ratio": 0.778,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'str', 'str')",
|
||||
"methods": 8,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.375,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('eturn', 'lask(', 'lask(')",
|
||||
"methods": 8,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.125,
|
||||
"sore": "eturn.(lask()+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('Blueprint', 'Blueprint', 'Blueprint')",
|
||||
"methods": 8,
|
||||
"unique": 7,
|
||||
"unique_ratio": 0.875,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'get', 'get')",
|
||||
"methods": 7,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.429,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'isinstance', 'isinstance')",
|
||||
"methods": 7,
|
||||
"unique": 7,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'url_for', 'url_for')",
|
||||
"methods": 7,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.143,
|
||||
"sore": "return.(url_for)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('class', 'def', 'get')",
|
||||
"methods": 7,
|
||||
"unique": 7,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'callable', 'callable')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('record_once', 'record_once', 'lambda')",
|
||||
"methods": 6,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.167,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('class', 'def', '__init__')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'get', 'get')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'is', 'raise')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', '_method_route', '_method_route')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "return.(_method_route)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('await', 'sleep', 'sleep')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'teardown_appcontext', 'def')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise', 'ValueError', 'ValueError')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "raise.(ValueError)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('cho(', 'cho(')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "(cho()+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('return', 'dict', 'dict')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "return.(dict)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('@', 'errorhandler', 'errorhandler')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('class', 'def', 'dispatch_request')",
|
||||
"methods": 5,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.6,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'before_request', 'def')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('get', 'get', 'get')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise', 'NotImplementedError', 'NotImplementedError')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "raise.(NotImplementedError)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('get', 'get', 'return')",
|
||||
"methods": 4,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'tag', 'tag')",
|
||||
"methods": 4,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('Flask', 'Flask', '@')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('test_client', 'test_client', 'get')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('class', '@', 'errorhandler')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'render_template_string', 'render_template_string')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "return.(render_template_string)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('@', 'template_filter', 'template_filter')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'template_test', 'template_test')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise', 'Forbidden', 'Forbidden')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "raise.(Forbidden)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('return', 'Response', 'Response')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "return.(Response)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('Flask', 'Flask', 'from_mapping')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'not in', 'not')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'test_client', 'test_client')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "return.(test_client)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('yield',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "yield",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('login', 'login', 'post')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('def', 'wrapper', 'if')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'join', 'join')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'dumps', 'dumps')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('getattr', 'getattr', 'getattr')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('or',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "or",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('is', 'is not', 'not')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise', 'Exception', 'Exception')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "raise.(Exception)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('mkdir', 'mkdir', 'syspath_prepend')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('lask(', 'lask(', 'dd_url_rule(')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('em(sys.', 'em(sys.', 's(clic')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('setenv', 'setenv', 'setenv')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('Flask', 'Flask', 'raises')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('yield', 'yield', 'yield')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "(yield)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('@', 'stream_with_context', 'def')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('update', 'update', '@')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('Flask', 'Flask', 'test_client')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'post', 'post')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'get', 'get')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'context_processor', 'def')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('def', 'my_reverse', 'return')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('from', 'blueprintapp', 'import')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('from', 'werkzeug', 'routing')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise', 'InternalServerError', 'InternalServerError')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "raise.(InternalServerError)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('def', 'index', 'return')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('get_flashed_messages', 'get_flashed_messages', 'list')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('ndpoin',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "ndpoin",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('ain_m', 'ain_m', 'p.route(\"/\"')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
}
|
||||
],
|
||||
"coverage": 10.7,
|
||||
"elapsed_seconds": 0.05,
|
||||
"merge_info": {
|
||||
"merges": {
|
||||
"iterations": 1,
|
||||
"merges": 0,
|
||||
"comparisons": 11325,
|
||||
"contexts_before": 598,
|
||||
"contexts_after": 598,
|
||||
"threshold": 0.05,
|
||||
"merge_log": []
|
||||
},
|
||||
"threshold": 0.05,
|
||||
"contexts_before": 598,
|
||||
"contexts_after": 598
|
||||
}
|
||||
}
|
||||
712
experiments/results/flask_reduce_k3_e01.json
Normal file
712
experiments/results/flask_reduce_k3_e01.json
Normal file
|
|
@ -0,0 +1,712 @@
|
|||
{
|
||||
"strategy": "Reduce k=3 \u03b5=0.1",
|
||||
"total_contexts": 598,
|
||||
"meaningful_contexts": 85,
|
||||
"total_methods": 1391,
|
||||
"methods_in_good_groups": 149,
|
||||
"sore_successes": 21,
|
||||
"sore_failures": 23,
|
||||
"skip_reasons": {
|
||||
"too_large": 2,
|
||||
"too_diverse": 38,
|
||||
"large_alphabet": 1
|
||||
},
|
||||
"groups": [
|
||||
{
|
||||
"context": "('return',)",
|
||||
"methods": 203,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.005,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'route', 'route')",
|
||||
"methods": 58,
|
||||
"unique": 53,
|
||||
"unique_ratio": 0.914,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'render_template', 'render_template')",
|
||||
"methods": 33,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.061,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('append', 'append')",
|
||||
"methods": 33,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.03,
|
||||
"sore": "(append)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('return', 'isinstance', 'isinstance')",
|
||||
"methods": 32,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.062,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('Blueprint', 'Blueprint', '@')",
|
||||
"methods": 21,
|
||||
"unique": 21,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise',)",
|
||||
"methods": 19,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.053,
|
||||
"sore": "raise",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('isinstance', 'isinstance', 'isinstance')",
|
||||
"methods": 17,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.353,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('append', 'append', 'return')",
|
||||
"methods": 17,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.059,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('abort', 'abort')",
|
||||
"methods": 16,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.062,
|
||||
"sore": "(abort)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('if', 'is', 'return')",
|
||||
"methods": 10,
|
||||
"unique": 9,
|
||||
"unique_ratio": 0.9,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('super', 'super', 'super')",
|
||||
"methods": 10,
|
||||
"unique": 10,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'is not', 'is')",
|
||||
"methods": 10,
|
||||
"unique": 9,
|
||||
"unique_ratio": 0.9,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'jsonify', 'jsonify')",
|
||||
"methods": 10,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.4,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('get', 'get', 'if')",
|
||||
"methods": 9,
|
||||
"unique": 9,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'is', 'is not')",
|
||||
"methods": 9,
|
||||
"unique": 9,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('pop', 'pop')",
|
||||
"methods": 9,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.111,
|
||||
"sore": "(pop)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('setdefault', 'setdefault', 'append')",
|
||||
"methods": 9,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.222,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'teardown_request', 'def')",
|
||||
"methods": 9,
|
||||
"unique": 8,
|
||||
"unique_ratio": 0.889,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('Blueprint', 'Blueprint', 'def')",
|
||||
"methods": 9,
|
||||
"unique": 7,
|
||||
"unique_ratio": 0.778,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'str', 'str')",
|
||||
"methods": 8,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.375,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('eturn', 'lask(', 'lask(')",
|
||||
"methods": 8,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.125,
|
||||
"sore": "eturn.(lask()+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('Blueprint', 'Blueprint', 'Blueprint')",
|
||||
"methods": 8,
|
||||
"unique": 7,
|
||||
"unique_ratio": 0.875,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'get', 'get')",
|
||||
"methods": 7,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.429,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'isinstance', 'isinstance')",
|
||||
"methods": 7,
|
||||
"unique": 7,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'url_for', 'url_for')",
|
||||
"methods": 7,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.143,
|
||||
"sore": "return.(url_for)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('class', 'def', 'get')",
|
||||
"methods": 7,
|
||||
"unique": 7,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'callable', 'callable')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('record_once', 'record_once', 'lambda')",
|
||||
"methods": 6,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.167,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('class', 'def', '__init__')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'get', 'get')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'is', 'raise')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', '_method_route', '_method_route')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "return.(_method_route)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('await', 'sleep', 'sleep')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'teardown_appcontext', 'def')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise', 'ValueError', 'ValueError')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "raise.(ValueError)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('cho(', 'cho(')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "(cho()+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('return', 'dict', 'dict')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "return.(dict)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('@', 'errorhandler', 'errorhandler')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('class', 'def', 'dispatch_request')",
|
||||
"methods": 5,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.6,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'before_request', 'def')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('get', 'get', 'get')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise', 'NotImplementedError', 'NotImplementedError')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "raise.(NotImplementedError)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('get', 'get', 'return')",
|
||||
"methods": 4,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'tag', 'tag')",
|
||||
"methods": 4,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('Flask', 'Flask', '@')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('test_client', 'test_client', 'get')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('class', '@', 'errorhandler')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'render_template_string', 'render_template_string')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "return.(render_template_string)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('@', 'template_filter', 'template_filter')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'template_test', 'template_test')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise', 'Forbidden', 'Forbidden')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "raise.(Forbidden)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('return', 'Response', 'Response')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "return.(Response)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('Flask', 'Flask', 'from_mapping')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'not in', 'not')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'test_client', 'test_client')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "return.(test_client)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('yield',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "yield",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('login', 'login', 'post')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('def', 'wrapper', 'if')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'join', 'join')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'dumps', 'dumps')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('getattr', 'getattr', 'getattr')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('or',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "or",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('is', 'is not', 'not')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise', 'Exception', 'Exception')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "raise.(Exception)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('mkdir', 'mkdir', 'syspath_prepend')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('lask(', 'lask(', 'dd_url_rule(')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('em(sys.', 'em(sys.', 's(clic')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('setenv', 'setenv', 'setenv')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('Flask', 'Flask', 'raises')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('yield', 'yield', 'yield')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "(yield)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('@', 'stream_with_context', 'def')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('update', 'update', '@')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('Flask', 'Flask', 'test_client')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'post', 'post')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'get', 'get')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'context_processor', 'def')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('def', 'my_reverse', 'return')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('from', 'blueprintapp', 'import')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('from', 'werkzeug', 'routing')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise', 'InternalServerError', 'InternalServerError')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "raise.(InternalServerError)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('def', 'index', 'return')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('get_flashed_messages', 'get_flashed_messages', 'list')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('ndpoin',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "ndpoin",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('ain_m', 'ain_m', 'p.route(\"/\"')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
}
|
||||
],
|
||||
"coverage": 10.7,
|
||||
"elapsed_seconds": 0.05,
|
||||
"merge_info": {
|
||||
"merges": {
|
||||
"iterations": 1,
|
||||
"merges": 0,
|
||||
"comparisons": 11325,
|
||||
"contexts_before": 598,
|
||||
"contexts_after": 598,
|
||||
"threshold": 0.1,
|
||||
"merge_log": []
|
||||
},
|
||||
"threshold": 0.1,
|
||||
"contexts_before": 598,
|
||||
"contexts_after": 598
|
||||
}
|
||||
}
|
||||
712
experiments/results/flask_reduce_k3_e015.json
Normal file
712
experiments/results/flask_reduce_k3_e015.json
Normal file
|
|
@ -0,0 +1,712 @@
|
|||
{
|
||||
"strategy": "Reduce k=3 \u03b5=0.15",
|
||||
"total_contexts": 598,
|
||||
"meaningful_contexts": 85,
|
||||
"total_methods": 1391,
|
||||
"methods_in_good_groups": 149,
|
||||
"sore_successes": 21,
|
||||
"sore_failures": 23,
|
||||
"skip_reasons": {
|
||||
"too_large": 2,
|
||||
"too_diverse": 38,
|
||||
"large_alphabet": 1
|
||||
},
|
||||
"groups": [
|
||||
{
|
||||
"context": "('return',)",
|
||||
"methods": 203,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.005,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'route', 'route')",
|
||||
"methods": 58,
|
||||
"unique": 53,
|
||||
"unique_ratio": 0.914,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'render_template', 'render_template')",
|
||||
"methods": 33,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.061,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('append', 'append')",
|
||||
"methods": 33,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.03,
|
||||
"sore": "(append)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('return', 'isinstance', 'isinstance')",
|
||||
"methods": 32,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.062,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('Blueprint', 'Blueprint', '@')",
|
||||
"methods": 21,
|
||||
"unique": 21,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise',)",
|
||||
"methods": 19,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.053,
|
||||
"sore": "raise",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('isinstance', 'isinstance', 'isinstance')",
|
||||
"methods": 17,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.353,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('append', 'append', 'return')",
|
||||
"methods": 17,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.059,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('abort', 'abort')",
|
||||
"methods": 16,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.062,
|
||||
"sore": "(abort)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('if', 'is', 'return')",
|
||||
"methods": 10,
|
||||
"unique": 9,
|
||||
"unique_ratio": 0.9,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('super', 'super', 'super')",
|
||||
"methods": 10,
|
||||
"unique": 10,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'is not', 'is')",
|
||||
"methods": 10,
|
||||
"unique": 9,
|
||||
"unique_ratio": 0.9,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'jsonify', 'jsonify')",
|
||||
"methods": 10,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.4,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('get', 'get', 'if')",
|
||||
"methods": 9,
|
||||
"unique": 9,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'is', 'is not')",
|
||||
"methods": 9,
|
||||
"unique": 9,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('pop', 'pop')",
|
||||
"methods": 9,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.111,
|
||||
"sore": "(pop)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('setdefault', 'setdefault', 'append')",
|
||||
"methods": 9,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.222,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'teardown_request', 'def')",
|
||||
"methods": 9,
|
||||
"unique": 8,
|
||||
"unique_ratio": 0.889,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('Blueprint', 'Blueprint', 'def')",
|
||||
"methods": 9,
|
||||
"unique": 7,
|
||||
"unique_ratio": 0.778,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'str', 'str')",
|
||||
"methods": 8,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.375,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('eturn', 'lask(', 'lask(')",
|
||||
"methods": 8,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.125,
|
||||
"sore": "eturn.(lask()+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('Blueprint', 'Blueprint', 'Blueprint')",
|
||||
"methods": 8,
|
||||
"unique": 7,
|
||||
"unique_ratio": 0.875,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'get', 'get')",
|
||||
"methods": 7,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.429,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'isinstance', 'isinstance')",
|
||||
"methods": 7,
|
||||
"unique": 7,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'url_for', 'url_for')",
|
||||
"methods": 7,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.143,
|
||||
"sore": "return.(url_for)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('class', 'def', 'get')",
|
||||
"methods": 7,
|
||||
"unique": 7,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'callable', 'callable')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('record_once', 'record_once', 'lambda')",
|
||||
"methods": 6,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.167,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('class', 'def', '__init__')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'get', 'get')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'is', 'raise')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', '_method_route', '_method_route')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "return.(_method_route)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('await', 'sleep', 'sleep')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'teardown_appcontext', 'def')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise', 'ValueError', 'ValueError')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "raise.(ValueError)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('cho(', 'cho(')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "(cho()+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('return', 'dict', 'dict')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "return.(dict)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('@', 'errorhandler', 'errorhandler')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('class', 'def', 'dispatch_request')",
|
||||
"methods": 5,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.6,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'before_request', 'def')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('get', 'get', 'get')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise', 'NotImplementedError', 'NotImplementedError')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "raise.(NotImplementedError)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('get', 'get', 'return')",
|
||||
"methods": 4,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'tag', 'tag')",
|
||||
"methods": 4,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('Flask', 'Flask', '@')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('test_client', 'test_client', 'get')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('class', '@', 'errorhandler')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'render_template_string', 'render_template_string')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "return.(render_template_string)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('@', 'template_filter', 'template_filter')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'template_test', 'template_test')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise', 'Forbidden', 'Forbidden')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "raise.(Forbidden)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('return', 'Response', 'Response')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "return.(Response)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('Flask', 'Flask', 'from_mapping')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'not in', 'not')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'test_client', 'test_client')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "return.(test_client)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('yield',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "yield",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('login', 'login', 'post')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('def', 'wrapper', 'if')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'join', 'join')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'dumps', 'dumps')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('getattr', 'getattr', 'getattr')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('or',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "or",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('is', 'is not', 'not')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise', 'Exception', 'Exception')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "raise.(Exception)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('mkdir', 'mkdir', 'syspath_prepend')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('lask(', 'lask(', 'dd_url_rule(')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('em(sys.', 'em(sys.', 's(clic')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('setenv', 'setenv', 'setenv')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('Flask', 'Flask', 'raises')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('yield', 'yield', 'yield')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "(yield)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('@', 'stream_with_context', 'def')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('update', 'update', '@')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('Flask', 'Flask', 'test_client')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'post', 'post')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'get', 'get')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'context_processor', 'def')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('def', 'my_reverse', 'return')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('from', 'blueprintapp', 'import')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('from', 'werkzeug', 'routing')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise', 'InternalServerError', 'InternalServerError')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "raise.(InternalServerError)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('def', 'index', 'return')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('get_flashed_messages', 'get_flashed_messages', 'list')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('ndpoin',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "ndpoin",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('ain_m', 'ain_m', 'p.route(\"/\"')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
}
|
||||
],
|
||||
"coverage": 10.7,
|
||||
"elapsed_seconds": 0.09,
|
||||
"merge_info": {
|
||||
"merges": {
|
||||
"iterations": 1,
|
||||
"merges": 0,
|
||||
"comparisons": 11325,
|
||||
"contexts_before": 598,
|
||||
"contexts_after": 598,
|
||||
"threshold": 0.15,
|
||||
"merge_log": []
|
||||
},
|
||||
"threshold": 0.15,
|
||||
"contexts_before": 598,
|
||||
"contexts_after": 598
|
||||
}
|
||||
}
|
||||
712
experiments/results/flask_reduce_k3_e02.json
Normal file
712
experiments/results/flask_reduce_k3_e02.json
Normal file
|
|
@ -0,0 +1,712 @@
|
|||
{
|
||||
"strategy": "Reduce k=3 \u03b5=0.2",
|
||||
"total_contexts": 598,
|
||||
"meaningful_contexts": 85,
|
||||
"total_methods": 1391,
|
||||
"methods_in_good_groups": 149,
|
||||
"sore_successes": 21,
|
||||
"sore_failures": 23,
|
||||
"skip_reasons": {
|
||||
"too_large": 2,
|
||||
"too_diverse": 38,
|
||||
"large_alphabet": 1
|
||||
},
|
||||
"groups": [
|
||||
{
|
||||
"context": "('return',)",
|
||||
"methods": 203,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.005,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'route', 'route')",
|
||||
"methods": 58,
|
||||
"unique": 53,
|
||||
"unique_ratio": 0.914,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'render_template', 'render_template')",
|
||||
"methods": 33,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.061,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('append', 'append')",
|
||||
"methods": 33,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.03,
|
||||
"sore": "(append)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('return', 'isinstance', 'isinstance')",
|
||||
"methods": 32,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.062,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('Blueprint', 'Blueprint', '@')",
|
||||
"methods": 21,
|
||||
"unique": 21,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise',)",
|
||||
"methods": 19,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.053,
|
||||
"sore": "raise",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('isinstance', 'isinstance', 'isinstance')",
|
||||
"methods": 17,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.353,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('append', 'append', 'return')",
|
||||
"methods": 17,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.059,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('abort', 'abort')",
|
||||
"methods": 16,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.062,
|
||||
"sore": "(abort)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('if', 'is', 'return')",
|
||||
"methods": 10,
|
||||
"unique": 9,
|
||||
"unique_ratio": 0.9,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('super', 'super', 'super')",
|
||||
"methods": 10,
|
||||
"unique": 10,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'is not', 'is')",
|
||||
"methods": 10,
|
||||
"unique": 9,
|
||||
"unique_ratio": 0.9,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'jsonify', 'jsonify')",
|
||||
"methods": 10,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.4,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('get', 'get', 'if')",
|
||||
"methods": 9,
|
||||
"unique": 9,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'is', 'is not')",
|
||||
"methods": 9,
|
||||
"unique": 9,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('pop', 'pop')",
|
||||
"methods": 9,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.111,
|
||||
"sore": "(pop)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('setdefault', 'setdefault', 'append')",
|
||||
"methods": 9,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.222,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'teardown_request', 'def')",
|
||||
"methods": 9,
|
||||
"unique": 8,
|
||||
"unique_ratio": 0.889,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('Blueprint', 'Blueprint', 'def')",
|
||||
"methods": 9,
|
||||
"unique": 7,
|
||||
"unique_ratio": 0.778,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'str', 'str')",
|
||||
"methods": 8,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.375,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('eturn', 'lask(', 'lask(')",
|
||||
"methods": 8,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.125,
|
||||
"sore": "eturn.(lask()+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('Blueprint', 'Blueprint', 'Blueprint')",
|
||||
"methods": 8,
|
||||
"unique": 7,
|
||||
"unique_ratio": 0.875,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'get', 'get')",
|
||||
"methods": 7,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.429,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'isinstance', 'isinstance')",
|
||||
"methods": 7,
|
||||
"unique": 7,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'url_for', 'url_for')",
|
||||
"methods": 7,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.143,
|
||||
"sore": "return.(url_for)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('class', 'def', 'get')",
|
||||
"methods": 7,
|
||||
"unique": 7,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'callable', 'callable')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('record_once', 'record_once', 'lambda')",
|
||||
"methods": 6,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.167,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('class', 'def', '__init__')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'get', 'get')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'is', 'raise')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', '_method_route', '_method_route')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "return.(_method_route)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('await', 'sleep', 'sleep')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'teardown_appcontext', 'def')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise', 'ValueError', 'ValueError')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "raise.(ValueError)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('cho(', 'cho(')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "(cho()+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('return', 'dict', 'dict')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "return.(dict)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('@', 'errorhandler', 'errorhandler')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('class', 'def', 'dispatch_request')",
|
||||
"methods": 5,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.6,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'before_request', 'def')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('get', 'get', 'get')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise', 'NotImplementedError', 'NotImplementedError')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "raise.(NotImplementedError)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('get', 'get', 'return')",
|
||||
"methods": 4,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'tag', 'tag')",
|
||||
"methods": 4,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('Flask', 'Flask', '@')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('test_client', 'test_client', 'get')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('class', '@', 'errorhandler')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'render_template_string', 'render_template_string')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "return.(render_template_string)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('@', 'template_filter', 'template_filter')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'template_test', 'template_test')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise', 'Forbidden', 'Forbidden')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "raise.(Forbidden)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('return', 'Response', 'Response')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "return.(Response)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('Flask', 'Flask', 'from_mapping')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'not in', 'not')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'test_client', 'test_client')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "return.(test_client)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('yield',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "yield",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('login', 'login', 'post')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('def', 'wrapper', 'if')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'join', 'join')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'dumps', 'dumps')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('getattr', 'getattr', 'getattr')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('or',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "or",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('is', 'is not', 'not')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise', 'Exception', 'Exception')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "raise.(Exception)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('mkdir', 'mkdir', 'syspath_prepend')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('lask(', 'lask(', 'dd_url_rule(')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('em(sys.', 'em(sys.', 's(clic')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('setenv', 'setenv', 'setenv')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('Flask', 'Flask', 'raises')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('yield', 'yield', 'yield')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "(yield)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('@', 'stream_with_context', 'def')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('update', 'update', '@')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('Flask', 'Flask', 'test_client')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'post', 'post')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'get', 'get')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'context_processor', 'def')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('def', 'my_reverse', 'return')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('from', 'blueprintapp', 'import')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('from', 'werkzeug', 'routing')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise', 'InternalServerError', 'InternalServerError')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "raise.(InternalServerError)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('def', 'index', 'return')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('get_flashed_messages', 'get_flashed_messages', 'list')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('ndpoin',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "ndpoin",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('ain_m', 'ain_m', 'p.route(\"/\"')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
}
|
||||
],
|
||||
"coverage": 10.7,
|
||||
"elapsed_seconds": 0.11,
|
||||
"merge_info": {
|
||||
"merges": {
|
||||
"iterations": 1,
|
||||
"merges": 0,
|
||||
"comparisons": 11325,
|
||||
"contexts_before": 598,
|
||||
"contexts_after": 598,
|
||||
"threshold": 0.2,
|
||||
"merge_log": []
|
||||
},
|
||||
"threshold": 0.2,
|
||||
"contexts_before": 598,
|
||||
"contexts_after": 598
|
||||
}
|
||||
}
|
||||
728
experiments/results/flask_reduce_k3_e03.json
Normal file
728
experiments/results/flask_reduce_k3_e03.json
Normal file
|
|
@ -0,0 +1,728 @@
|
|||
{
|
||||
"strategy": "Reduce k=3 \u03b5=0.3",
|
||||
"total_contexts": 598,
|
||||
"meaningful_contexts": 86,
|
||||
"total_methods": 1393,
|
||||
"methods_in_good_groups": 149,
|
||||
"sore_successes": 21,
|
||||
"sore_failures": 23,
|
||||
"skip_reasons": {
|
||||
"too_large": 2,
|
||||
"too_diverse": 39,
|
||||
"large_alphabet": 1
|
||||
},
|
||||
"groups": [
|
||||
{
|
||||
"context": "('return',)",
|
||||
"methods": 203,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.005,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'route', 'route')",
|
||||
"methods": 58,
|
||||
"unique": 53,
|
||||
"unique_ratio": 0.914,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'render_template', 'render_template')",
|
||||
"methods": 33,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.061,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('append', 'append')",
|
||||
"methods": 33,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.03,
|
||||
"sore": "(append)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('return', 'isinstance', 'isinstance')",
|
||||
"methods": 32,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.062,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('Blueprint', 'Blueprint', '@')",
|
||||
"methods": 21,
|
||||
"unique": 21,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise',)",
|
||||
"methods": 19,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.053,
|
||||
"sore": "raise",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('isinstance', 'isinstance', 'isinstance')",
|
||||
"methods": 17,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.353,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('append', 'append', 'return')",
|
||||
"methods": 17,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.059,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('abort', 'abort')",
|
||||
"methods": 16,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.062,
|
||||
"sore": "(abort)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('if', 'is', 'return')",
|
||||
"methods": 10,
|
||||
"unique": 9,
|
||||
"unique_ratio": 0.9,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('super', 'super', 'super')",
|
||||
"methods": 10,
|
||||
"unique": 10,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'is not', 'is')",
|
||||
"methods": 10,
|
||||
"unique": 9,
|
||||
"unique_ratio": 0.9,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'jsonify', 'jsonify')",
|
||||
"methods": 10,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.4,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('get', 'get', 'if')",
|
||||
"methods": 9,
|
||||
"unique": 9,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'is', 'is not')",
|
||||
"methods": 9,
|
||||
"unique": 9,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('pop', 'pop')",
|
||||
"methods": 9,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.111,
|
||||
"sore": "(pop)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('setdefault', 'setdefault', 'append')",
|
||||
"methods": 9,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.222,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'teardown_request', 'def')",
|
||||
"methods": 9,
|
||||
"unique": 8,
|
||||
"unique_ratio": 0.889,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('Blueprint', 'Blueprint', 'def')",
|
||||
"methods": 9,
|
||||
"unique": 7,
|
||||
"unique_ratio": 0.778,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'str', 'str')",
|
||||
"methods": 8,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.375,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('eturn', 'lask(', 'lask(')",
|
||||
"methods": 8,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.125,
|
||||
"sore": "eturn.(lask()+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('Blueprint', 'Blueprint', 'Blueprint')",
|
||||
"methods": 8,
|
||||
"unique": 7,
|
||||
"unique_ratio": 0.875,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'get', 'get')",
|
||||
"methods": 7,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.429,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'isinstance', 'isinstance')",
|
||||
"methods": 7,
|
||||
"unique": 7,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'url_for', 'url_for')",
|
||||
"methods": 7,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.143,
|
||||
"sore": "return.(url_for)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('class', 'def', 'get')",
|
||||
"methods": 7,
|
||||
"unique": 7,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'callable', 'callable')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('record_once', 'record_once', 'lambda')",
|
||||
"methods": 6,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.167,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('class', 'def', '__init__')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'get', 'get')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'is', 'raise')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', '_method_route', '_method_route')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "return.(_method_route)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('await', 'sleep', 'sleep')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'teardown_appcontext', 'def')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise', 'ValueError', 'ValueError')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "raise.(ValueError)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('cho(', 'cho(')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "(cho()+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('return', 'dict', 'dict')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "return.(dict)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('@', 'errorhandler', 'errorhandler')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('class', 'def', 'dispatch_request')",
|
||||
"methods": 5,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.6,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'before_request', 'def')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('get', 'get', 'get')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise', 'NotImplementedError', 'NotImplementedError')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "raise.(NotImplementedError)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('get', 'get', 'return')",
|
||||
"methods": 4,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'tag', 'tag')",
|
||||
"methods": 4,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('Flask', 'Flask', '@')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('test_client', 'test_client', 'get')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('class', '@', 'errorhandler')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'render_template_string', 'render_template_string')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "return.(render_template_string)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('@', 'template_filter', 'template_filter')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'template_test', 'template_test')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('def', 'boolean', 'return')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise', 'Forbidden', 'Forbidden')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "raise.(Forbidden)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('return', 'Response', 'Response')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "return.(Response)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('Flask', 'Flask', 'from_mapping')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'not in', 'not')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'test_client', 'test_client')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "return.(test_client)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('yield',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "yield",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('login', 'login', 'post')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('def', 'wrapper', 'if')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'join', 'join')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'dumps', 'dumps')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('getattr', 'getattr', 'getattr')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('or',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "or",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('is', 'is not', 'not')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise', 'Exception', 'Exception')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "raise.(Exception)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('mkdir', 'mkdir', 'syspath_prepend')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('lask(', 'lask(', 'dd_url_rule(')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('em(sys.', 'em(sys.', 's(clic')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('setenv', 'setenv', 'setenv')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('Flask', 'Flask', 'raises')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('yield', 'yield', 'yield')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "(yield)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('@', 'stream_with_context', 'def')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('update', 'update', '@')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('Flask', 'Flask', 'test_client')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'post', 'post')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'get', 'get')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'context_processor', 'def')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('def', 'my_reverse', 'return')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('from', 'blueprintapp', 'import')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('from', 'werkzeug', 'routing')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise', 'InternalServerError', 'InternalServerError')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "raise.(InternalServerError)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('def', 'index', 'return')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('get_flashed_messages', 'get_flashed_messages', 'list')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('ndpoin',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "ndpoin",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('ain_m', 'ain_m', 'p.route(\"/\"')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
}
|
||||
],
|
||||
"coverage": 10.7,
|
||||
"elapsed_seconds": 0.11,
|
||||
"merge_info": {
|
||||
"merges": {
|
||||
"iterations": 2,
|
||||
"merges": 1,
|
||||
"comparisons": 22500,
|
||||
"contexts_before": 598,
|
||||
"contexts_after": 598,
|
||||
"threshold": 0.3,
|
||||
"merge_log": [
|
||||
{
|
||||
"iteration": 1,
|
||||
"merged_into": "('def', 'boolean', 'return')",
|
||||
"removed": "('def', 'is_boolean', 'return')",
|
||||
"distance": 0.2424,
|
||||
"new_size": 4
|
||||
}
|
||||
]
|
||||
},
|
||||
"threshold": 0.3,
|
||||
"contexts_before": 598,
|
||||
"contexts_after": 598
|
||||
}
|
||||
}
|
||||
728
experiments/results/flask_reduce_k3_e04.json
Normal file
728
experiments/results/flask_reduce_k3_e04.json
Normal file
|
|
@ -0,0 +1,728 @@
|
|||
{
|
||||
"strategy": "Reduce k=3 \u03b5=0.4",
|
||||
"total_contexts": 598,
|
||||
"meaningful_contexts": 86,
|
||||
"total_methods": 1393,
|
||||
"methods_in_good_groups": 149,
|
||||
"sore_successes": 21,
|
||||
"sore_failures": 23,
|
||||
"skip_reasons": {
|
||||
"too_large": 2,
|
||||
"too_diverse": 39,
|
||||
"large_alphabet": 1
|
||||
},
|
||||
"groups": [
|
||||
{
|
||||
"context": "('return',)",
|
||||
"methods": 203,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.005,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'route', 'route')",
|
||||
"methods": 58,
|
||||
"unique": 53,
|
||||
"unique_ratio": 0.914,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'render_template', 'render_template')",
|
||||
"methods": 33,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.061,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('append', 'append')",
|
||||
"methods": 33,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.03,
|
||||
"sore": "(append)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('return', 'isinstance', 'isinstance')",
|
||||
"methods": 32,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.062,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('Blueprint', 'Blueprint', '@')",
|
||||
"methods": 21,
|
||||
"unique": 21,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise',)",
|
||||
"methods": 19,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.053,
|
||||
"sore": "raise",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('isinstance', 'isinstance', 'isinstance')",
|
||||
"methods": 17,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.353,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('append', 'append', 'return')",
|
||||
"methods": 17,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.059,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('abort', 'abort')",
|
||||
"methods": 16,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.062,
|
||||
"sore": "(abort)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('if', 'is', 'return')",
|
||||
"methods": 10,
|
||||
"unique": 9,
|
||||
"unique_ratio": 0.9,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('super', 'super', 'super')",
|
||||
"methods": 10,
|
||||
"unique": 10,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'is not', 'is')",
|
||||
"methods": 10,
|
||||
"unique": 9,
|
||||
"unique_ratio": 0.9,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'jsonify', 'jsonify')",
|
||||
"methods": 10,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.4,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('get', 'get', 'if')",
|
||||
"methods": 9,
|
||||
"unique": 9,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'is', 'is not')",
|
||||
"methods": 9,
|
||||
"unique": 9,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('pop', 'pop')",
|
||||
"methods": 9,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.111,
|
||||
"sore": "(pop)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('setdefault', 'setdefault', 'append')",
|
||||
"methods": 9,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.222,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'teardown_request', 'def')",
|
||||
"methods": 9,
|
||||
"unique": 8,
|
||||
"unique_ratio": 0.889,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('Blueprint', 'Blueprint', 'def')",
|
||||
"methods": 9,
|
||||
"unique": 7,
|
||||
"unique_ratio": 0.778,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'str', 'str')",
|
||||
"methods": 8,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.375,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('eturn', 'lask(', 'lask(')",
|
||||
"methods": 8,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.125,
|
||||
"sore": "eturn.(lask()+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('Blueprint', 'Blueprint', 'Blueprint')",
|
||||
"methods": 8,
|
||||
"unique": 7,
|
||||
"unique_ratio": 0.875,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'get', 'get')",
|
||||
"methods": 7,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.429,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'isinstance', 'isinstance')",
|
||||
"methods": 7,
|
||||
"unique": 7,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'url_for', 'url_for')",
|
||||
"methods": 7,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.143,
|
||||
"sore": "return.(url_for)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('class', 'def', 'get')",
|
||||
"methods": 7,
|
||||
"unique": 7,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'callable', 'callable')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('record_once', 'record_once', 'lambda')",
|
||||
"methods": 6,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.167,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('class', 'def', '__init__')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'get', 'get')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'is', 'raise')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', '_method_route', '_method_route')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "return.(_method_route)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('await', 'sleep', 'sleep')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'teardown_appcontext', 'def')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise', 'ValueError', 'ValueError')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "raise.(ValueError)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('cho(', 'cho(')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "(cho()+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('return', 'dict', 'dict')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "return.(dict)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('@', 'errorhandler', 'errorhandler')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('class', 'def', 'dispatch_request')",
|
||||
"methods": 5,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.6,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'before_request', 'def')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('get', 'get', 'get')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise', 'NotImplementedError', 'NotImplementedError')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "raise.(NotImplementedError)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('get', 'get', 'return')",
|
||||
"methods": 4,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'tag', 'tag')",
|
||||
"methods": 4,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('Flask', 'Flask', '@')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('test_client', 'test_client', 'get')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('class', '@', 'errorhandler')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'render_template_string', 'render_template_string')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "return.(render_template_string)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('@', 'template_filter', 'template_filter')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'template_test', 'template_test')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('def', 'boolean', 'return')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise', 'Forbidden', 'Forbidden')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "raise.(Forbidden)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('return', 'Response', 'Response')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "return.(Response)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('Flask', 'Flask', 'from_mapping')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('if', 'not in', 'not')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'test_client', 'test_client')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "return.(test_client)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('yield',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "yield",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('login', 'login', 'post')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('def', 'wrapper', 'if')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'join', 'join')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('return', 'dumps', 'dumps')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('getattr', 'getattr', 'getattr')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('or',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "or",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('is', 'is not', 'not')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise', 'Exception', 'Exception')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "raise.(Exception)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('mkdir', 'mkdir', 'syspath_prepend')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('lask(', 'lask(', 'dd_url_rule(')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('em(sys.', 'em(sys.', 's(clic')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('setenv', 'setenv', 'setenv')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('Flask', 'Flask', 'raises')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('yield', 'yield', 'yield')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "(yield)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('@', 'stream_with_context', 'def')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('update', 'update', '@')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('Flask', 'Flask', 'test_client')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'post', 'post')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'get', 'get')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('@', 'context_processor', 'def')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('def', 'my_reverse', 'return')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('from', 'blueprintapp', 'import')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('from', 'werkzeug', 'routing')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('raise', 'InternalServerError', 'InternalServerError')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "raise.(InternalServerError)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('def', 'index', 'return')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('get_flashed_messages', 'get_flashed_messages', 'list')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('ndpoin',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "ndpoin",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('ain_m', 'ain_m', 'p.route(\"/\"')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
}
|
||||
],
|
||||
"coverage": 10.7,
|
||||
"elapsed_seconds": 0.09,
|
||||
"merge_info": {
|
||||
"merges": {
|
||||
"iterations": 2,
|
||||
"merges": 1,
|
||||
"comparisons": 22500,
|
||||
"contexts_before": 598,
|
||||
"contexts_after": 598,
|
||||
"threshold": 0.4,
|
||||
"merge_log": [
|
||||
{
|
||||
"iteration": 1,
|
||||
"merged_into": "('def', 'boolean', 'return')",
|
||||
"removed": "('def', 'is_boolean', 'return')",
|
||||
"distance": 0.2424,
|
||||
"new_size": 4
|
||||
}
|
||||
]
|
||||
},
|
||||
"threshold": 0.4,
|
||||
"contexts_before": 598,
|
||||
"contexts_after": 598
|
||||
}
|
||||
}
|
||||
40
experiments/results/flask_return_type_heuristic.json
Normal file
40
experiments/results/flask_return_type_heuristic.json
Normal file
|
|
@ -0,0 +1,40 @@
|
|||
{
|
||||
"strategy": "Option H: Return type heuristic",
|
||||
"total_contexts": 3,
|
||||
"meaningful_contexts": 3,
|
||||
"total_methods": 1391,
|
||||
"methods_in_good_groups": 0,
|
||||
"sore_successes": 0,
|
||||
"sore_failures": 1,
|
||||
"skip_reasons": {
|
||||
"too_large": 2
|
||||
},
|
||||
"groups": [
|
||||
{
|
||||
"context": "('RETURN_VALUE',)",
|
||||
"methods": 1013,
|
||||
"unique": 767,
|
||||
"unique_ratio": 0.757,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('RETURN_OTHER',)",
|
||||
"methods": 374,
|
||||
"unique": 128,
|
||||
"unique_ratio": 0.342,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('SIDE_EFFECT',)",
|
||||
"methods": 4,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.5,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
}
|
||||
],
|
||||
"coverage": 0.0,
|
||||
"elapsed_seconds": 0.0
|
||||
}
|
||||
764
experiments/results/flask_summary.json
Normal file
764
experiments/results/flask_summary.json
Normal file
|
|
@ -0,0 +1,764 @@
|
|||
[
|
||||
{
|
||||
"strategy": "Baseline: Package grouping",
|
||||
"total_contexts": 15,
|
||||
"meaningful_contexts": 9,
|
||||
"total_methods": 1391,
|
||||
"methods_in_good_groups": 0,
|
||||
"sore_successes": 0,
|
||||
"sore_failures": 1,
|
||||
"skip_reasons": {
|
||||
"too_large": 3,
|
||||
"large_alphabet": 1,
|
||||
"too_diverse": 4
|
||||
},
|
||||
"coverage": 0.0,
|
||||
"elapsed_seconds": 0.02
|
||||
},
|
||||
{
|
||||
"strategy": "Option A: File path k=1",
|
||||
"total_contexts": 13,
|
||||
"meaningful_contexts": 7,
|
||||
"total_methods": 1391,
|
||||
"methods_in_good_groups": 0,
|
||||
"sore_successes": 0,
|
||||
"sore_failures": 1,
|
||||
"skip_reasons": {
|
||||
"too_large": 3,
|
||||
"large_alphabet": 1,
|
||||
"too_diverse": 2
|
||||
},
|
||||
"coverage": 0.0,
|
||||
"elapsed_seconds": 0.01
|
||||
},
|
||||
{
|
||||
"strategy": "Option A: File path k=2",
|
||||
"total_contexts": 15,
|
||||
"meaningful_contexts": 9,
|
||||
"total_methods": 1391,
|
||||
"methods_in_good_groups": 0,
|
||||
"sore_successes": 0,
|
||||
"sore_failures": 1,
|
||||
"skip_reasons": {
|
||||
"too_large": 3,
|
||||
"large_alphabet": 1,
|
||||
"too_diverse": 4
|
||||
},
|
||||
"coverage": 0.0,
|
||||
"elapsed_seconds": 0.02
|
||||
},
|
||||
{
|
||||
"strategy": "Option A: File path k=3",
|
||||
"total_contexts": 15,
|
||||
"meaningful_contexts": 9,
|
||||
"total_methods": 1391,
|
||||
"methods_in_good_groups": 0,
|
||||
"sore_successes": 0,
|
||||
"sore_failures": 1,
|
||||
"skip_reasons": {
|
||||
"too_large": 3,
|
||||
"large_alphabet": 1,
|
||||
"too_diverse": 4
|
||||
},
|
||||
"coverage": 0.0,
|
||||
"elapsed_seconds": 0.01
|
||||
},
|
||||
{
|
||||
"strategy": "Option B: First 1 symbols",
|
||||
"total_contexts": 228,
|
||||
"meaningful_contexts": 53,
|
||||
"total_methods": 1391,
|
||||
"methods_in_good_groups": 19,
|
||||
"sore_successes": 2,
|
||||
"sore_failures": 14,
|
||||
"skip_reasons": {
|
||||
"too_large": 5,
|
||||
"too_diverse": 29,
|
||||
"large_alphabet": 3
|
||||
},
|
||||
"coverage": 1.4,
|
||||
"elapsed_seconds": 0.08
|
||||
},
|
||||
{
|
||||
"strategy": "Option B: First 2 symbols",
|
||||
"total_contexts": 430,
|
||||
"meaningful_contexts": 96,
|
||||
"total_methods": 1391,
|
||||
"methods_in_good_groups": 102,
|
||||
"sore_successes": 18,
|
||||
"sore_failures": 23,
|
||||
"skip_reasons": {
|
||||
"too_large": 3,
|
||||
"too_diverse": 50,
|
||||
"large_alphabet": 2
|
||||
},
|
||||
"coverage": 7.3,
|
||||
"elapsed_seconds": 0.08
|
||||
},
|
||||
{
|
||||
"strategy": "Option B: First 3 symbols",
|
||||
"total_contexts": 598,
|
||||
"meaningful_contexts": 85,
|
||||
"total_methods": 1391,
|
||||
"methods_in_good_groups": 149,
|
||||
"sore_successes": 21,
|
||||
"sore_failures": 23,
|
||||
"skip_reasons": {
|
||||
"too_large": 2,
|
||||
"too_diverse": 38,
|
||||
"large_alphabet": 1
|
||||
},
|
||||
"coverage": 10.7,
|
||||
"elapsed_seconds": 0.11
|
||||
},
|
||||
{
|
||||
"strategy": "Option C: Path k=1 + Symbol k=1",
|
||||
"total_contexts": 288,
|
||||
"meaningful_contexts": 68,
|
||||
"total_methods": 1391,
|
||||
"methods_in_good_groups": 30,
|
||||
"sore_successes": 5,
|
||||
"sore_failures": 19,
|
||||
"skip_reasons": {
|
||||
"too_large": 3,
|
||||
"large_alphabet": 5,
|
||||
"too_diverse": 36
|
||||
},
|
||||
"coverage": 2.2,
|
||||
"elapsed_seconds": 0.07
|
||||
},
|
||||
{
|
||||
"strategy": "Option C: Path k=1 + Symbol k=2",
|
||||
"total_contexts": 512,
|
||||
"meaningful_contexts": 96,
|
||||
"total_methods": 1391,
|
||||
"methods_in_good_groups": 141,
|
||||
"sore_successes": 22,
|
||||
"sore_failures": 22,
|
||||
"skip_reasons": {
|
||||
"too_large": 2,
|
||||
"too_diverse": 48,
|
||||
"large_alphabet": 2
|
||||
},
|
||||
"coverage": 10.1,
|
||||
"elapsed_seconds": 0.07
|
||||
},
|
||||
{
|
||||
"strategy": "Option C: Path k=2 + Symbol k=1",
|
||||
"total_contexts": 297,
|
||||
"meaningful_contexts": 69,
|
||||
"total_methods": 1391,
|
||||
"methods_in_good_groups": 30,
|
||||
"sore_successes": 5,
|
||||
"sore_failures": 19,
|
||||
"skip_reasons": {
|
||||
"too_large": 3,
|
||||
"large_alphabet": 5,
|
||||
"too_diverse": 37
|
||||
},
|
||||
"coverage": 2.2,
|
||||
"elapsed_seconds": 0.08
|
||||
},
|
||||
{
|
||||
"strategy": "Option C: Path k=2 + Symbol k=2",
|
||||
"total_contexts": 520,
|
||||
"meaningful_contexts": 93,
|
||||
"total_methods": 1391,
|
||||
"methods_in_good_groups": 132,
|
||||
"sore_successes": 19,
|
||||
"sore_failures": 22,
|
||||
"skip_reasons": {
|
||||
"too_large": 2,
|
||||
"too_diverse": 48,
|
||||
"large_alphabet": 2
|
||||
},
|
||||
"coverage": 9.5,
|
||||
"elapsed_seconds": 0.04
|
||||
},
|
||||
{
|
||||
"strategy": "Option H: Return type heuristic",
|
||||
"total_contexts": 3,
|
||||
"meaningful_contexts": 3,
|
||||
"total_methods": 1391,
|
||||
"methods_in_good_groups": 0,
|
||||
"sore_successes": 0,
|
||||
"sore_failures": 1,
|
||||
"skip_reasons": {
|
||||
"too_large": 2
|
||||
},
|
||||
"coverage": 0.0,
|
||||
"elapsed_seconds": 0.0
|
||||
},
|
||||
{
|
||||
"strategy": "Reduce k=1 \u03b5=0.05",
|
||||
"total_contexts": 228,
|
||||
"meaningful_contexts": 53,
|
||||
"total_methods": 1391,
|
||||
"methods_in_good_groups": 19,
|
||||
"sore_successes": 2,
|
||||
"sore_failures": 14,
|
||||
"skip_reasons": {
|
||||
"too_large": 5,
|
||||
"too_diverse": 29,
|
||||
"large_alphabet": 3
|
||||
},
|
||||
"coverage": 1.4,
|
||||
"elapsed_seconds": 0.05,
|
||||
"merge_info": {
|
||||
"merges": {
|
||||
"iterations": 1,
|
||||
"merges": 0,
|
||||
"comparisons": 4095,
|
||||
"contexts_before": 228,
|
||||
"contexts_after": 228,
|
||||
"threshold": 0.05,
|
||||
"merge_log": []
|
||||
},
|
||||
"threshold": 0.05,
|
||||
"contexts_before": 228,
|
||||
"contexts_after": 228
|
||||
}
|
||||
},
|
||||
{
|
||||
"strategy": "Reduce k=1 \u03b5=0.1",
|
||||
"total_contexts": 228,
|
||||
"meaningful_contexts": 53,
|
||||
"total_methods": 1391,
|
||||
"methods_in_good_groups": 19,
|
||||
"sore_successes": 2,
|
||||
"sore_failures": 14,
|
||||
"skip_reasons": {
|
||||
"too_large": 5,
|
||||
"too_diverse": 29,
|
||||
"large_alphabet": 3
|
||||
},
|
||||
"coverage": 1.4,
|
||||
"elapsed_seconds": 0.03,
|
||||
"merge_info": {
|
||||
"merges": {
|
||||
"iterations": 1,
|
||||
"merges": 0,
|
||||
"comparisons": 4095,
|
||||
"contexts_before": 228,
|
||||
"contexts_after": 228,
|
||||
"threshold": 0.1,
|
||||
"merge_log": []
|
||||
},
|
||||
"threshold": 0.1,
|
||||
"contexts_before": 228,
|
||||
"contexts_after": 228
|
||||
}
|
||||
},
|
||||
{
|
||||
"strategy": "Reduce k=1 \u03b5=0.15",
|
||||
"total_contexts": 228,
|
||||
"meaningful_contexts": 53,
|
||||
"total_methods": 1391,
|
||||
"methods_in_good_groups": 19,
|
||||
"sore_successes": 2,
|
||||
"sore_failures": 14,
|
||||
"skip_reasons": {
|
||||
"too_large": 5,
|
||||
"too_diverse": 29,
|
||||
"large_alphabet": 3
|
||||
},
|
||||
"coverage": 1.4,
|
||||
"elapsed_seconds": 0.06,
|
||||
"merge_info": {
|
||||
"merges": {
|
||||
"iterations": 1,
|
||||
"merges": 0,
|
||||
"comparisons": 4095,
|
||||
"contexts_before": 228,
|
||||
"contexts_after": 228,
|
||||
"threshold": 0.15,
|
||||
"merge_log": []
|
||||
},
|
||||
"threshold": 0.15,
|
||||
"contexts_before": 228,
|
||||
"contexts_after": 228
|
||||
}
|
||||
},
|
||||
{
|
||||
"strategy": "Reduce k=1 \u03b5=0.2",
|
||||
"total_contexts": 228,
|
||||
"meaningful_contexts": 53,
|
||||
"total_methods": 1391,
|
||||
"methods_in_good_groups": 19,
|
||||
"sore_successes": 2,
|
||||
"sore_failures": 14,
|
||||
"skip_reasons": {
|
||||
"too_large": 5,
|
||||
"too_diverse": 29,
|
||||
"large_alphabet": 3
|
||||
},
|
||||
"coverage": 1.4,
|
||||
"elapsed_seconds": 0.07,
|
||||
"merge_info": {
|
||||
"merges": {
|
||||
"iterations": 1,
|
||||
"merges": 0,
|
||||
"comparisons": 4095,
|
||||
"contexts_before": 228,
|
||||
"contexts_after": 228,
|
||||
"threshold": 0.2,
|
||||
"merge_log": []
|
||||
},
|
||||
"threshold": 0.2,
|
||||
"contexts_before": 228,
|
||||
"contexts_after": 228
|
||||
}
|
||||
},
|
||||
{
|
||||
"strategy": "Reduce k=1 \u03b5=0.3",
|
||||
"total_contexts": 228,
|
||||
"meaningful_contexts": 53,
|
||||
"total_methods": 1391,
|
||||
"methods_in_good_groups": 19,
|
||||
"sore_successes": 2,
|
||||
"sore_failures": 14,
|
||||
"skip_reasons": {
|
||||
"too_large": 5,
|
||||
"too_diverse": 29,
|
||||
"large_alphabet": 3
|
||||
},
|
||||
"coverage": 1.4,
|
||||
"elapsed_seconds": 0.06,
|
||||
"merge_info": {
|
||||
"merges": {
|
||||
"iterations": 1,
|
||||
"merges": 0,
|
||||
"comparisons": 4095,
|
||||
"contexts_before": 228,
|
||||
"contexts_after": 228,
|
||||
"threshold": 0.3,
|
||||
"merge_log": []
|
||||
},
|
||||
"threshold": 0.3,
|
||||
"contexts_before": 228,
|
||||
"contexts_after": 228
|
||||
}
|
||||
},
|
||||
{
|
||||
"strategy": "Reduce k=1 \u03b5=0.4",
|
||||
"total_contexts": 228,
|
||||
"meaningful_contexts": 53,
|
||||
"total_methods": 1391,
|
||||
"methods_in_good_groups": 19,
|
||||
"sore_successes": 2,
|
||||
"sore_failures": 14,
|
||||
"skip_reasons": {
|
||||
"too_large": 5,
|
||||
"too_diverse": 29,
|
||||
"large_alphabet": 3
|
||||
},
|
||||
"coverage": 1.4,
|
||||
"elapsed_seconds": 0.04,
|
||||
"merge_info": {
|
||||
"merges": {
|
||||
"iterations": 1,
|
||||
"merges": 0,
|
||||
"comparisons": 4095,
|
||||
"contexts_before": 228,
|
||||
"contexts_after": 228,
|
||||
"threshold": 0.4,
|
||||
"merge_log": []
|
||||
},
|
||||
"threshold": 0.4,
|
||||
"contexts_before": 228,
|
||||
"contexts_after": 228
|
||||
}
|
||||
},
|
||||
{
|
||||
"strategy": "Reduce k=2 \u03b5=0.05",
|
||||
"total_contexts": 430,
|
||||
"meaningful_contexts": 96,
|
||||
"total_methods": 1391,
|
||||
"methods_in_good_groups": 102,
|
||||
"sore_successes": 18,
|
||||
"sore_failures": 23,
|
||||
"skip_reasons": {
|
||||
"too_large": 3,
|
||||
"too_diverse": 50,
|
||||
"large_alphabet": 2
|
||||
},
|
||||
"coverage": 7.3,
|
||||
"elapsed_seconds": 0.07,
|
||||
"merge_info": {
|
||||
"merges": {
|
||||
"iterations": 1,
|
||||
"merges": 0,
|
||||
"comparisons": 11026,
|
||||
"contexts_before": 430,
|
||||
"contexts_after": 430,
|
||||
"threshold": 0.05,
|
||||
"merge_log": []
|
||||
},
|
||||
"threshold": 0.05,
|
||||
"contexts_before": 430,
|
||||
"contexts_after": 430
|
||||
}
|
||||
},
|
||||
{
|
||||
"strategy": "Reduce k=2 \u03b5=0.1",
|
||||
"total_contexts": 430,
|
||||
"meaningful_contexts": 96,
|
||||
"total_methods": 1391,
|
||||
"methods_in_good_groups": 102,
|
||||
"sore_successes": 18,
|
||||
"sore_failures": 23,
|
||||
"skip_reasons": {
|
||||
"too_large": 3,
|
||||
"too_diverse": 50,
|
||||
"large_alphabet": 2
|
||||
},
|
||||
"coverage": 7.3,
|
||||
"elapsed_seconds": 0.05,
|
||||
"merge_info": {
|
||||
"merges": {
|
||||
"iterations": 1,
|
||||
"merges": 0,
|
||||
"comparisons": 11026,
|
||||
"contexts_before": 430,
|
||||
"contexts_after": 430,
|
||||
"threshold": 0.1,
|
||||
"merge_log": []
|
||||
},
|
||||
"threshold": 0.1,
|
||||
"contexts_before": 430,
|
||||
"contexts_after": 430
|
||||
}
|
||||
},
|
||||
{
|
||||
"strategy": "Reduce k=2 \u03b5=0.15",
|
||||
"total_contexts": 430,
|
||||
"meaningful_contexts": 96,
|
||||
"total_methods": 1391,
|
||||
"methods_in_good_groups": 102,
|
||||
"sore_successes": 18,
|
||||
"sore_failures": 23,
|
||||
"skip_reasons": {
|
||||
"too_large": 3,
|
||||
"too_diverse": 50,
|
||||
"large_alphabet": 2
|
||||
},
|
||||
"coverage": 7.3,
|
||||
"elapsed_seconds": 0.05,
|
||||
"merge_info": {
|
||||
"merges": {
|
||||
"iterations": 1,
|
||||
"merges": 0,
|
||||
"comparisons": 11026,
|
||||
"contexts_before": 430,
|
||||
"contexts_after": 430,
|
||||
"threshold": 0.15,
|
||||
"merge_log": []
|
||||
},
|
||||
"threshold": 0.15,
|
||||
"contexts_before": 430,
|
||||
"contexts_after": 430
|
||||
}
|
||||
},
|
||||
{
|
||||
"strategy": "Reduce k=2 \u03b5=0.2",
|
||||
"total_contexts": 430,
|
||||
"meaningful_contexts": 96,
|
||||
"total_methods": 1391,
|
||||
"methods_in_good_groups": 102,
|
||||
"sore_successes": 18,
|
||||
"sore_failures": 23,
|
||||
"skip_reasons": {
|
||||
"too_large": 3,
|
||||
"too_diverse": 50,
|
||||
"large_alphabet": 2
|
||||
},
|
||||
"coverage": 7.3,
|
||||
"elapsed_seconds": 0.12,
|
||||
"merge_info": {
|
||||
"merges": {
|
||||
"iterations": 1,
|
||||
"merges": 0,
|
||||
"comparisons": 11026,
|
||||
"contexts_before": 430,
|
||||
"contexts_after": 430,
|
||||
"threshold": 0.2,
|
||||
"merge_log": []
|
||||
},
|
||||
"threshold": 0.2,
|
||||
"contexts_before": 430,
|
||||
"contexts_after": 430
|
||||
}
|
||||
},
|
||||
{
|
||||
"strategy": "Reduce k=2 \u03b5=0.3",
|
||||
"total_contexts": 430,
|
||||
"meaningful_contexts": 97,
|
||||
"total_methods": 1393,
|
||||
"methods_in_good_groups": 102,
|
||||
"sore_successes": 18,
|
||||
"sore_failures": 23,
|
||||
"skip_reasons": {
|
||||
"too_large": 3,
|
||||
"too_diverse": 51,
|
||||
"large_alphabet": 2
|
||||
},
|
||||
"coverage": 7.3,
|
||||
"elapsed_seconds": 0.05,
|
||||
"merge_info": {
|
||||
"merges": {
|
||||
"iterations": 2,
|
||||
"merges": 1,
|
||||
"comparisons": 21904,
|
||||
"contexts_before": 430,
|
||||
"contexts_after": 430,
|
||||
"threshold": 0.3,
|
||||
"merge_log": [
|
||||
{
|
||||
"iteration": 1,
|
||||
"merged_into": "('def', 'boolean')",
|
||||
"removed": "('def', 'is_boolean')",
|
||||
"distance": 0.2424,
|
||||
"new_size": 4
|
||||
}
|
||||
]
|
||||
},
|
||||
"threshold": 0.3,
|
||||
"contexts_before": 430,
|
||||
"contexts_after": 430
|
||||
}
|
||||
},
|
||||
{
|
||||
"strategy": "Reduce k=2 \u03b5=0.4",
|
||||
"total_contexts": 430,
|
||||
"meaningful_contexts": 97,
|
||||
"total_methods": 1393,
|
||||
"methods_in_good_groups": 102,
|
||||
"sore_successes": 18,
|
||||
"sore_failures": 23,
|
||||
"skip_reasons": {
|
||||
"too_large": 3,
|
||||
"too_diverse": 51,
|
||||
"large_alphabet": 2
|
||||
},
|
||||
"coverage": 7.3,
|
||||
"elapsed_seconds": 0.05,
|
||||
"merge_info": {
|
||||
"merges": {
|
||||
"iterations": 2,
|
||||
"merges": 1,
|
||||
"comparisons": 21904,
|
||||
"contexts_before": 430,
|
||||
"contexts_after": 430,
|
||||
"threshold": 0.4,
|
||||
"merge_log": [
|
||||
{
|
||||
"iteration": 1,
|
||||
"merged_into": "('def', 'boolean')",
|
||||
"removed": "('def', 'is_boolean')",
|
||||
"distance": 0.2424,
|
||||
"new_size": 4
|
||||
}
|
||||
]
|
||||
},
|
||||
"threshold": 0.4,
|
||||
"contexts_before": 430,
|
||||
"contexts_after": 430
|
||||
}
|
||||
},
|
||||
{
|
||||
"strategy": "Reduce k=3 \u03b5=0.05",
|
||||
"total_contexts": 598,
|
||||
"meaningful_contexts": 85,
|
||||
"total_methods": 1391,
|
||||
"methods_in_good_groups": 149,
|
||||
"sore_successes": 21,
|
||||
"sore_failures": 23,
|
||||
"skip_reasons": {
|
||||
"too_large": 2,
|
||||
"too_diverse": 38,
|
||||
"large_alphabet": 1
|
||||
},
|
||||
"coverage": 10.7,
|
||||
"elapsed_seconds": 0.05,
|
||||
"merge_info": {
|
||||
"merges": {
|
||||
"iterations": 1,
|
||||
"merges": 0,
|
||||
"comparisons": 11325,
|
||||
"contexts_before": 598,
|
||||
"contexts_after": 598,
|
||||
"threshold": 0.05,
|
||||
"merge_log": []
|
||||
},
|
||||
"threshold": 0.05,
|
||||
"contexts_before": 598,
|
||||
"contexts_after": 598
|
||||
}
|
||||
},
|
||||
{
|
||||
"strategy": "Reduce k=3 \u03b5=0.1",
|
||||
"total_contexts": 598,
|
||||
"meaningful_contexts": 85,
|
||||
"total_methods": 1391,
|
||||
"methods_in_good_groups": 149,
|
||||
"sore_successes": 21,
|
||||
"sore_failures": 23,
|
||||
"skip_reasons": {
|
||||
"too_large": 2,
|
||||
"too_diverse": 38,
|
||||
"large_alphabet": 1
|
||||
},
|
||||
"coverage": 10.7,
|
||||
"elapsed_seconds": 0.05,
|
||||
"merge_info": {
|
||||
"merges": {
|
||||
"iterations": 1,
|
||||
"merges": 0,
|
||||
"comparisons": 11325,
|
||||
"contexts_before": 598,
|
||||
"contexts_after": 598,
|
||||
"threshold": 0.1,
|
||||
"merge_log": []
|
||||
},
|
||||
"threshold": 0.1,
|
||||
"contexts_before": 598,
|
||||
"contexts_after": 598
|
||||
}
|
||||
},
|
||||
{
|
||||
"strategy": "Reduce k=3 \u03b5=0.15",
|
||||
"total_contexts": 598,
|
||||
"meaningful_contexts": 85,
|
||||
"total_methods": 1391,
|
||||
"methods_in_good_groups": 149,
|
||||
"sore_successes": 21,
|
||||
"sore_failures": 23,
|
||||
"skip_reasons": {
|
||||
"too_large": 2,
|
||||
"too_diverse": 38,
|
||||
"large_alphabet": 1
|
||||
},
|
||||
"coverage": 10.7,
|
||||
"elapsed_seconds": 0.09,
|
||||
"merge_info": {
|
||||
"merges": {
|
||||
"iterations": 1,
|
||||
"merges": 0,
|
||||
"comparisons": 11325,
|
||||
"contexts_before": 598,
|
||||
"contexts_after": 598,
|
||||
"threshold": 0.15,
|
||||
"merge_log": []
|
||||
},
|
||||
"threshold": 0.15,
|
||||
"contexts_before": 598,
|
||||
"contexts_after": 598
|
||||
}
|
||||
},
|
||||
{
|
||||
"strategy": "Reduce k=3 \u03b5=0.2",
|
||||
"total_contexts": 598,
|
||||
"meaningful_contexts": 85,
|
||||
"total_methods": 1391,
|
||||
"methods_in_good_groups": 149,
|
||||
"sore_successes": 21,
|
||||
"sore_failures": 23,
|
||||
"skip_reasons": {
|
||||
"too_large": 2,
|
||||
"too_diverse": 38,
|
||||
"large_alphabet": 1
|
||||
},
|
||||
"coverage": 10.7,
|
||||
"elapsed_seconds": 0.11,
|
||||
"merge_info": {
|
||||
"merges": {
|
||||
"iterations": 1,
|
||||
"merges": 0,
|
||||
"comparisons": 11325,
|
||||
"contexts_before": 598,
|
||||
"contexts_after": 598,
|
||||
"threshold": 0.2,
|
||||
"merge_log": []
|
||||
},
|
||||
"threshold": 0.2,
|
||||
"contexts_before": 598,
|
||||
"contexts_after": 598
|
||||
}
|
||||
},
|
||||
{
|
||||
"strategy": "Reduce k=3 \u03b5=0.3",
|
||||
"total_contexts": 598,
|
||||
"meaningful_contexts": 86,
|
||||
"total_methods": 1393,
|
||||
"methods_in_good_groups": 149,
|
||||
"sore_successes": 21,
|
||||
"sore_failures": 23,
|
||||
"skip_reasons": {
|
||||
"too_large": 2,
|
||||
"too_diverse": 39,
|
||||
"large_alphabet": 1
|
||||
},
|
||||
"coverage": 10.7,
|
||||
"elapsed_seconds": 0.11,
|
||||
"merge_info": {
|
||||
"merges": {
|
||||
"iterations": 2,
|
||||
"merges": 1,
|
||||
"comparisons": 22500,
|
||||
"contexts_before": 598,
|
||||
"contexts_after": 598,
|
||||
"threshold": 0.3,
|
||||
"merge_log": [
|
||||
{
|
||||
"iteration": 1,
|
||||
"merged_into": "('def', 'boolean', 'return')",
|
||||
"removed": "('def', 'is_boolean', 'return')",
|
||||
"distance": 0.2424,
|
||||
"new_size": 4
|
||||
}
|
||||
]
|
||||
},
|
||||
"threshold": 0.3,
|
||||
"contexts_before": 598,
|
||||
"contexts_after": 598
|
||||
}
|
||||
},
|
||||
{
|
||||
"strategy": "Reduce k=3 \u03b5=0.4",
|
||||
"total_contexts": 598,
|
||||
"meaningful_contexts": 86,
|
||||
"total_methods": 1393,
|
||||
"methods_in_good_groups": 149,
|
||||
"sore_successes": 21,
|
||||
"sore_failures": 23,
|
||||
"skip_reasons": {
|
||||
"too_large": 2,
|
||||
"too_diverse": 39,
|
||||
"large_alphabet": 1
|
||||
},
|
||||
"coverage": 10.7,
|
||||
"elapsed_seconds": 0.09,
|
||||
"merge_info": {
|
||||
"merges": {
|
||||
"iterations": 2,
|
||||
"merges": 1,
|
||||
"comparisons": 22500,
|
||||
"contexts_before": 598,
|
||||
"contexts_after": 598,
|
||||
"threshold": 0.4,
|
||||
"merge_log": [
|
||||
{
|
||||
"iteration": 1,
|
||||
"merged_into": "('def', 'boolean', 'return')",
|
||||
"removed": "('def', 'is_boolean', 'return')",
|
||||
"distance": 0.2424,
|
||||
"new_size": 4
|
||||
}
|
||||
]
|
||||
},
|
||||
"threshold": 0.4,
|
||||
"contexts_before": 598,
|
||||
"contexts_after": 598
|
||||
}
|
||||
}
|
||||
]
|
||||
562
experiments/results/flask_two_d_p1_s1.json
Normal file
562
experiments/results/flask_two_d_p1_s1.json
Normal file
|
|
@ -0,0 +1,562 @@
|
|||
{
|
||||
"strategy": "Option C: Path k=1 + Symbol k=1",
|
||||
"total_contexts": 288,
|
||||
"meaningful_contexts": 68,
|
||||
"total_methods": 1391,
|
||||
"methods_in_good_groups": 30,
|
||||
"sore_successes": 5,
|
||||
"sore_failures": 19,
|
||||
"skip_reasons": {
|
||||
"too_large": 3,
|
||||
"large_alphabet": 5,
|
||||
"too_diverse": 36
|
||||
},
|
||||
"groups": [
|
||||
{
|
||||
"context": "('tests', 'return')",
|
||||
"methods": 287,
|
||||
"unique": 36,
|
||||
"unique_ratio": 0.125,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', '@')",
|
||||
"methods": 108,
|
||||
"unique": 100,
|
||||
"unique_ratio": 0.926,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('flask', 'if')",
|
||||
"methods": 68,
|
||||
"unique": 63,
|
||||
"unique_ratio": 0.926,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'raise')",
|
||||
"methods": 47,
|
||||
"unique": 24,
|
||||
"unique_ratio": 0.511,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'class')",
|
||||
"methods": 45,
|
||||
"unique": 43,
|
||||
"unique_ratio": 0.956,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'append')",
|
||||
"methods": 45,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.067,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'Blueprint')",
|
||||
"methods": 40,
|
||||
"unique": 37,
|
||||
"unique_ratio": 0.925,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('flask', 'return')",
|
||||
"methods": 32,
|
||||
"unique": 25,
|
||||
"unique_ratio": 0.781,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('sansio', 'if')",
|
||||
"methods": 28,
|
||||
"unique": 27,
|
||||
"unique_ratio": 0.964,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('json', 'return')",
|
||||
"methods": 26,
|
||||
"unique": 20,
|
||||
"unique_ratio": 0.769,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'def')",
|
||||
"methods": 23,
|
||||
"unique": 21,
|
||||
"unique_ratio": 0.913,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'Flask')",
|
||||
"methods": 21,
|
||||
"unique": 21,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('type_check', 'return')",
|
||||
"methods": 21,
|
||||
"unique": 7,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('sansio', 'return')",
|
||||
"methods": 16,
|
||||
"unique": 11,
|
||||
"unique_ratio": 0.688,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'abort')",
|
||||
"methods": 16,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.062,
|
||||
"sore": "(abort)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'isinstance')",
|
||||
"methods": 16,
|
||||
"unique": 5,
|
||||
"unique_ratio": 0.312,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('flask', 'try')",
|
||||
"methods": 12,
|
||||
"unique": 12,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'get')",
|
||||
"methods": 11,
|
||||
"unique": 10,
|
||||
"unique_ratio": 0.909,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('sansio', 'def')",
|
||||
"methods": 11,
|
||||
"unique": 11,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'eturn')",
|
||||
"methods": 11,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.364,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('flask', 'get')",
|
||||
"methods": 9,
|
||||
"unique": 9,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'setdefault')",
|
||||
"methods": 9,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'from')",
|
||||
"methods": 9,
|
||||
"unique": 9,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'pop')",
|
||||
"methods": 9,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.222,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('json', 'if')",
|
||||
"methods": 8,
|
||||
"unique": 8,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'raises')",
|
||||
"methods": 8,
|
||||
"unique": 7,
|
||||
"unique_ratio": 0.875,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'name_')",
|
||||
"methods": 8,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'yield')",
|
||||
"methods": 7,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.429,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'login')",
|
||||
"methods": 7,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.857,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('flask', 'super')",
|
||||
"methods": 7,
|
||||
"unique": 7,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('flask', 'for')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('flask', '_get_current_object')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('sansio', 'append')",
|
||||
"methods": 6,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('sansio', 'record_once')",
|
||||
"methods": 6,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.167,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'if')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'cho(')",
|
||||
"methods": 6,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('flaskr', 'if')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'app_context')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('flask', 'raise')",
|
||||
"methods": 5,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.6,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('json', 'raise')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "raise",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'await')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'test_client')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'mkdir')",
|
||||
"methods": 5,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.8,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'ef')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'lask(')",
|
||||
"methods": 5,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.8,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'get_flashed_messages')",
|
||||
"methods": 5,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.8,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'not')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('flask', 'import')",
|
||||
"methods": 4,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'write_text')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'em(sys.')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'setenv')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'ain_m')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'post')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('flaskr', 'get_db')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('flask', 'join')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('flask', 'def')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('flask', 'from')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('sansio', 'raise')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "raise.((NotImplementedError)+)?",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('sansio', 'or')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "or",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('sansio', 'setdefault')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'is')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'setattr')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'rom')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'nvoke(')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'update')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 't')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'lask.u')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'ndpoin')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "ndpoin",
|
||||
"sore_success": true
|
||||
}
|
||||
],
|
||||
"coverage": 2.2,
|
||||
"elapsed_seconds": 0.07
|
||||
}
|
||||
786
experiments/results/flask_two_d_p1_s2.json
Normal file
786
experiments/results/flask_two_d_p1_s2.json
Normal file
|
|
@ -0,0 +1,786 @@
|
|||
{
|
||||
"strategy": "Option C: Path k=1 + Symbol k=2",
|
||||
"total_contexts": 512,
|
||||
"meaningful_contexts": 96,
|
||||
"total_methods": 1391,
|
||||
"methods_in_good_groups": 141,
|
||||
"sore_successes": 22,
|
||||
"sore_failures": 22,
|
||||
"skip_reasons": {
|
||||
"too_large": 2,
|
||||
"too_diverse": 48,
|
||||
"large_alphabet": 2
|
||||
},
|
||||
"groups": [
|
||||
{
|
||||
"context": "('tests', 'return')",
|
||||
"methods": 177,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.006,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', '@', 'route')",
|
||||
"methods": 58,
|
||||
"unique": 53,
|
||||
"unique_ratio": 0.914,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'append', 'append')",
|
||||
"methods": 45,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.067,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'Blueprint', 'Blueprint')",
|
||||
"methods": 40,
|
||||
"unique": 37,
|
||||
"unique_ratio": 0.925,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'class', 'def')",
|
||||
"methods": 28,
|
||||
"unique": 26,
|
||||
"unique_ratio": 0.929,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'return', 'render_template')",
|
||||
"methods": 25,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.08,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'return', 'isinstance')",
|
||||
"methods": 24,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.042,
|
||||
"sore": "return.(isinstance)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('flask', 'if', 'is')",
|
||||
"methods": 22,
|
||||
"unique": 20,
|
||||
"unique_ratio": 0.909,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'Flask', 'Flask')",
|
||||
"methods": 21,
|
||||
"unique": 21,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'abort', 'abort')",
|
||||
"methods": 16,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.062,
|
||||
"sore": "(abort)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'isinstance', 'isinstance')",
|
||||
"methods": 16,
|
||||
"unique": 5,
|
||||
"unique_ratio": 0.312,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('flask', 'if', 'not')",
|
||||
"methods": 13,
|
||||
"unique": 12,
|
||||
"unique_ratio": 0.923,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('type_check', 'return')",
|
||||
"methods": 13,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.077,
|
||||
"sore": "return",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'raise')",
|
||||
"methods": 12,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.083,
|
||||
"sore": "raise",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'get', 'get')",
|
||||
"methods": 11,
|
||||
"unique": 10,
|
||||
"unique_ratio": 0.909,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'class', 'class')",
|
||||
"methods": 11,
|
||||
"unique": 11,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('flask', 'get', 'get')",
|
||||
"methods": 9,
|
||||
"unique": 9,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('sansio', 'if', 'is')",
|
||||
"methods": 9,
|
||||
"unique": 9,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'return', 'jsonify')",
|
||||
"methods": 9,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.444,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', '@', 'teardown_request')",
|
||||
"methods": 9,
|
||||
"unique": 8,
|
||||
"unique_ratio": 0.889,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'setdefault', 'setdefault')",
|
||||
"methods": 9,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'pop', 'pop')",
|
||||
"methods": 9,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.222,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'raises', 'raises')",
|
||||
"methods": 8,
|
||||
"unique": 7,
|
||||
"unique_ratio": 0.875,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'eturn', 'lask(')",
|
||||
"methods": 8,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.125,
|
||||
"sore": "eturn.(lask()+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'name_', 'name_')",
|
||||
"methods": 8,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'login', 'login')",
|
||||
"methods": 7,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.857,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('flask', 'return')",
|
||||
"methods": 7,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.143,
|
||||
"sore": "return",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('flask', 'super', 'super')",
|
||||
"methods": 7,
|
||||
"unique": 7,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('flask', 'if', 'is not')",
|
||||
"methods": 7,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.857,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('json', 'return', 'isinstance')",
|
||||
"methods": 7,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.286,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'return', 'str')",
|
||||
"methods": 7,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.286,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('flask', 'for', 'in')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('flask', 'if', 'return')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('flask', '_get_current_object', '_get_current_object')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('sansio', 'if', 'callable')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('sansio', 'append', 'append')",
|
||||
"methods": 6,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('sansio', 'record_once', 'record_once')",
|
||||
"methods": 6,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.167,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'cho(', 'cho(')",
|
||||
"methods": 6,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'return', 'url_for')",
|
||||
"methods": 6,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.167,
|
||||
"sore": "return.(url_for)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'app_context', 'app_context')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('flask', 'if', 'get')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('json', 'raise')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "raise",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('sansio', 'return', '_method_route')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "return.(_method_route)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'await', 'sleep')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'test_client', 'test_client')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', '@', 'teardown_appcontext')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'raise', 'ValueError')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "raise.(ValueError)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'mkdir', 'mkdir')",
|
||||
"methods": 5,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.8,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'lask(', 'lask(')",
|
||||
"methods": 5,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.8,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'return', 'dict')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "return.(dict)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('tests', '@', 'errorhandler')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'get_flashed_messages', 'get_flashed_messages')",
|
||||
"methods": 5,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.8,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', '@', 'before_request')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('flask', 'return', 'get')",
|
||||
"methods": 4,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('sansio', 'def', 'decorator')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'write_text', 'write_text')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'em(sys.', 'em(sys.')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'setenv', 'setenv')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'class', '@')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'return', 'render_template_string')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "return.(render_template_string)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('tests', '@', 'template_filter')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', '@', 'template_test')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'raise', 'Forbidden')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "raise.(Forbidden)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'ain_m', 'ain_m')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'post', 'post')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('flaskr', 'get_db', 'get_db')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'return', 'test_client')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "return.(test_client)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'return', 'get')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "return.(get)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'yield')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "yield",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('flask', 'try', 'return')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('flask', 'import', 'warnings')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('flask', 'join', 'join')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('flask', 'if', 'isinstance')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('flask', 'try', 'import')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('flask', 'raise', 'NotImplementedError')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "raise.(NotImplementedError)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('json', 'if', 'return')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('json', 'return', 'tag')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('sansio', 'or')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "or",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('sansio', 'if', 'is not')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('sansio', 'setdefault', 'setdefault')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'raise', 'Exception')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "raise.(Exception)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'setattr', 'setattr')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'ef', 'reate_app(')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'nvoke(', 'nvoke(')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'yield', 'yield')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "(yield)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('tests', '@', 'stream_with_context')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'update', 'update')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', '@', 'post')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', '@', 'get')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', '@', 'context_processor')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'def', 'my_reverse')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'from', 'blueprintapp')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'from', 'werkzeug')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'raise', 'InternalServerError')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "raise.(InternalServerError)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'def', 'index')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'ndpoin')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "ndpoin",
|
||||
"sore_success": true
|
||||
}
|
||||
],
|
||||
"coverage": 10.1,
|
||||
"elapsed_seconds": 0.07
|
||||
}
|
||||
570
experiments/results/flask_two_d_p2_s1.json
Normal file
570
experiments/results/flask_two_d_p2_s1.json
Normal file
|
|
@ -0,0 +1,570 @@
|
|||
{
|
||||
"strategy": "Option C: Path k=2 + Symbol k=1",
|
||||
"total_contexts": 297,
|
||||
"meaningful_contexts": 69,
|
||||
"total_methods": 1391,
|
||||
"methods_in_good_groups": 30,
|
||||
"sore_successes": 5,
|
||||
"sore_failures": 19,
|
||||
"skip_reasons": {
|
||||
"too_large": 3,
|
||||
"large_alphabet": 5,
|
||||
"too_diverse": 37
|
||||
},
|
||||
"groups": [
|
||||
{
|
||||
"context": "('tests', 'return')",
|
||||
"methods": 281,
|
||||
"unique": 33,
|
||||
"unique_ratio": 0.117,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', '@')",
|
||||
"methods": 108,
|
||||
"unique": 100,
|
||||
"unique_ratio": 0.926,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('src', 'flask', 'if')",
|
||||
"methods": 68,
|
||||
"unique": 63,
|
||||
"unique_ratio": 0.926,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'raise')",
|
||||
"methods": 47,
|
||||
"unique": 24,
|
||||
"unique_ratio": 0.511,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'append')",
|
||||
"methods": 45,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.067,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'class')",
|
||||
"methods": 44,
|
||||
"unique": 42,
|
||||
"unique_ratio": 0.955,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'Blueprint')",
|
||||
"methods": 40,
|
||||
"unique": 37,
|
||||
"unique_ratio": 0.925,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('src', 'flask', 'return')",
|
||||
"methods": 32,
|
||||
"unique": 25,
|
||||
"unique_ratio": 0.781,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('flask', 'sansio', 'if')",
|
||||
"methods": 28,
|
||||
"unique": 27,
|
||||
"unique_ratio": 0.964,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('flask', 'json', 'return')",
|
||||
"methods": 26,
|
||||
"unique": 20,
|
||||
"unique_ratio": 0.769,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'def')",
|
||||
"methods": 22,
|
||||
"unique": 20,
|
||||
"unique_ratio": 0.909,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'Flask')",
|
||||
"methods": 21,
|
||||
"unique": 21,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'type_check', 'return')",
|
||||
"methods": 21,
|
||||
"unique": 7,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('flask', 'sansio', 'return')",
|
||||
"methods": 16,
|
||||
"unique": 11,
|
||||
"unique_ratio": 0.688,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'abort')",
|
||||
"methods": 16,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.062,
|
||||
"sore": "(abort)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'isinstance')",
|
||||
"methods": 16,
|
||||
"unique": 5,
|
||||
"unique_ratio": 0.312,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('src', 'flask', 'try')",
|
||||
"methods": 12,
|
||||
"unique": 12,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('flask', 'sansio', 'def')",
|
||||
"methods": 11,
|
||||
"unique": 11,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'eturn')",
|
||||
"methods": 11,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.364,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('src', 'flask', 'get')",
|
||||
"methods": 9,
|
||||
"unique": 9,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'setdefault')",
|
||||
"methods": 9,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'from')",
|
||||
"methods": 9,
|
||||
"unique": 9,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'pop')",
|
||||
"methods": 9,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.222,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('flask', 'json', 'if')",
|
||||
"methods": 8,
|
||||
"unique": 8,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'raises')",
|
||||
"methods": 8,
|
||||
"unique": 7,
|
||||
"unique_ratio": 0.875,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'name_')",
|
||||
"methods": 8,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tutorial', 'tests', 'login')",
|
||||
"methods": 7,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.857,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('src', 'flask', 'super')",
|
||||
"methods": 7,
|
||||
"unique": 7,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'get')",
|
||||
"methods": 7,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.857,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('src', 'flask', 'for')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('src', 'flask', '_get_current_object')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('flask', 'sansio', 'append')",
|
||||
"methods": 6,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('flask', 'sansio', 'record_once')",
|
||||
"methods": 6,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.167,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'yield')",
|
||||
"methods": 6,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.5,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'if')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'cho(')",
|
||||
"methods": 6,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tutorial', 'flaskr', 'if')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tutorial', 'tests', 'return')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('src', 'flask', 'raise')",
|
||||
"methods": 5,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.6,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('flask', 'json', 'raise')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "raise",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'await')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'test_client')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'mkdir')",
|
||||
"methods": 5,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.8,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'ef')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'lask(')",
|
||||
"methods": 5,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.8,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'get_flashed_messages')",
|
||||
"methods": 5,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.8,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tutorial', 'tests', 'get')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('src', 'flask', 'import')",
|
||||
"methods": 4,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'write_text')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'em(sys.')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'setenv')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'ain_m')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tutorial', 'flaskr', 'get_db')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('src', 'flask', 'join')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('src', 'flask', 'def')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('src', 'flask', 'from')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('flask', 'sansio', 'raise')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "raise.((NotImplementedError)+)?",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('flask', 'sansio', 'or')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "or",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('flask', 'sansio', 'setdefault')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'app_context')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'is')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'setattr')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'rom')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'nvoke(')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'update')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'not')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 't')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'lask.u')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'ndpoin')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "ndpoin",
|
||||
"sore_success": true
|
||||
}
|
||||
],
|
||||
"coverage": 2.2,
|
||||
"elapsed_seconds": 0.08
|
||||
}
|
||||
762
experiments/results/flask_two_d_p2_s2.json
Normal file
762
experiments/results/flask_two_d_p2_s2.json
Normal file
|
|
@ -0,0 +1,762 @@
|
|||
{
|
||||
"strategy": "Option C: Path k=2 + Symbol k=2",
|
||||
"total_contexts": 520,
|
||||
"meaningful_contexts": 93,
|
||||
"total_methods": 1391,
|
||||
"methods_in_good_groups": 132,
|
||||
"sore_successes": 19,
|
||||
"sore_failures": 22,
|
||||
"skip_reasons": {
|
||||
"too_large": 2,
|
||||
"too_diverse": 48,
|
||||
"large_alphabet": 2
|
||||
},
|
||||
"groups": [
|
||||
{
|
||||
"context": "('tests', 'return')",
|
||||
"methods": 177,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.006,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', '@', 'route')",
|
||||
"methods": 58,
|
||||
"unique": 53,
|
||||
"unique_ratio": 0.914,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'append', 'append')",
|
||||
"methods": 45,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.067,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'Blueprint', 'Blueprint')",
|
||||
"methods": 40,
|
||||
"unique": 37,
|
||||
"unique_ratio": 0.925,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'class', 'def')",
|
||||
"methods": 27,
|
||||
"unique": 25,
|
||||
"unique_ratio": 0.926,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'return', 'render_template')",
|
||||
"methods": 25,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.08,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'return', 'isinstance')",
|
||||
"methods": 24,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.042,
|
||||
"sore": "return.(isinstance)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('src', 'flask', 'if', 'is')",
|
||||
"methods": 22,
|
||||
"unique": 20,
|
||||
"unique_ratio": 0.909,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'Flask', 'Flask')",
|
||||
"methods": 21,
|
||||
"unique": 21,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'abort', 'abort')",
|
||||
"methods": 16,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.062,
|
||||
"sore": "(abort)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'isinstance', 'isinstance')",
|
||||
"methods": 16,
|
||||
"unique": 5,
|
||||
"unique_ratio": 0.312,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('src', 'flask', 'if', 'not')",
|
||||
"methods": 13,
|
||||
"unique": 12,
|
||||
"unique_ratio": 0.923,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'type_check', 'return')",
|
||||
"methods": 13,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.077,
|
||||
"sore": "return",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'raise')",
|
||||
"methods": 12,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.083,
|
||||
"sore": "raise",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'class', 'class')",
|
||||
"methods": 11,
|
||||
"unique": 11,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('src', 'flask', 'get', 'get')",
|
||||
"methods": 9,
|
||||
"unique": 9,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('flask', 'sansio', 'if', 'is')",
|
||||
"methods": 9,
|
||||
"unique": 9,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'return', 'jsonify')",
|
||||
"methods": 9,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.444,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', '@', 'teardown_request')",
|
||||
"methods": 9,
|
||||
"unique": 8,
|
||||
"unique_ratio": 0.889,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'setdefault', 'setdefault')",
|
||||
"methods": 9,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'pop', 'pop')",
|
||||
"methods": 9,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.222,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'raises', 'raises')",
|
||||
"methods": 8,
|
||||
"unique": 7,
|
||||
"unique_ratio": 0.875,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'eturn', 'lask(')",
|
||||
"methods": 8,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.125,
|
||||
"sore": "eturn.(lask()+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'name_', 'name_')",
|
||||
"methods": 8,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tutorial', 'tests', 'login', 'login')",
|
||||
"methods": 7,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.857,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('src', 'flask', 'return')",
|
||||
"methods": 7,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.143,
|
||||
"sore": "return",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('src', 'flask', 'super', 'super')",
|
||||
"methods": 7,
|
||||
"unique": 7,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('src', 'flask', 'if', 'is not')",
|
||||
"methods": 7,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.857,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('flask', 'json', 'return', 'isinstance')",
|
||||
"methods": 7,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.286,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'get', 'get')",
|
||||
"methods": 7,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.857,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'return', 'str')",
|
||||
"methods": 7,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.286,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('src', 'flask', 'for', 'in')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('src', 'flask', 'if', 'return')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('src', 'flask', '_get_current_object', '_get_current_object')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('flask', 'sansio', 'if', 'callable')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('flask', 'sansio', 'append', 'append')",
|
||||
"methods": 6,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('flask', 'sansio', 'record_once', 'record_once')",
|
||||
"methods": 6,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.167,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'cho(', 'cho(')",
|
||||
"methods": 6,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'return', 'url_for')",
|
||||
"methods": 6,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.167,
|
||||
"sore": "return.(url_for)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('src', 'flask', 'if', 'get')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('flask', 'json', 'raise')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "raise",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('flask', 'sansio', 'return', '_method_route')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "return.(_method_route)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'await', 'sleep')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'test_client', 'test_client')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', '@', 'teardown_appcontext')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'raise', 'ValueError')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "raise.(ValueError)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'mkdir', 'mkdir')",
|
||||
"methods": 5,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.8,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'lask(', 'lask(')",
|
||||
"methods": 5,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.8,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'return', 'dict')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "return.(dict)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('tests', '@', 'errorhandler')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'get_flashed_messages', 'get_flashed_messages')",
|
||||
"methods": 5,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.8,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', '@', 'before_request')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tutorial', 'tests', 'get', 'get')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('src', 'flask', 'return', 'get')",
|
||||
"methods": 4,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('flask', 'sansio', 'def', 'decorator')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'write_text', 'write_text')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'em(sys.', 'em(sys.')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'setenv', 'setenv')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'class', '@')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'return', 'render_template_string')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "return.(render_template_string)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('tests', '@', 'template_filter')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', '@', 'template_test')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'raise', 'Forbidden')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "raise.(Forbidden)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'ain_m', 'ain_m')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tutorial', 'flaskr', 'get_db', 'get_db')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('src', 'flask', 'try', 'return')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('src', 'flask', 'import', 'warnings')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('src', 'flask', 'join', 'join')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('src', 'flask', 'if', 'isinstance')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('src', 'flask', 'try', 'import')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('src', 'flask', 'raise', 'NotImplementedError')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "raise.(NotImplementedError)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('flask', 'json', 'if', 'return')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('flask', 'json', 'return', 'tag')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('flask', 'sansio', 'or')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "or",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('flask', 'sansio', 'if', 'is not')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('flask', 'sansio', 'setdefault', 'setdefault')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'app_context', 'app_context')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'raise', 'Exception')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "raise.(Exception)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'setattr', 'setattr')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'ef', 'reate_app(')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'nvoke(', 'nvoke(')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'yield', 'yield')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "(yield)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('tests', '@', 'stream_with_context')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'update', 'update')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', '@', 'post')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', '@', 'get')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', '@', 'context_processor')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'def', 'my_reverse')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'from', 'blueprintapp')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'from', 'werkzeug')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'raise', 'InternalServerError')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "raise.(InternalServerError)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'def', 'index')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tests', 'ndpoin')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "ndpoin",
|
||||
"sore_success": true
|
||||
}
|
||||
],
|
||||
"coverage": 9.5,
|
||||
"elapsed_seconds": 0.04
|
||||
}
|
||||
946
experiments/results/ragsak_baseline_package.json
Normal file
946
experiments/results/ragsak_baseline_package.json
Normal file
|
|
@ -0,0 +1,946 @@
|
|||
{
|
||||
"strategy": "Baseline: Package grouping",
|
||||
"total_contexts": 137,
|
||||
"meaningful_contexts": 116,
|
||||
"total_methods": 1594,
|
||||
"methods_in_good_groups": 9,
|
||||
"sore_successes": 2,
|
||||
"sore_failures": 10,
|
||||
"skip_reasons": {
|
||||
"too_large": 5,
|
||||
"too_diverse": 89,
|
||||
"large_alphabet": 10
|
||||
},
|
||||
"groups": [
|
||||
{
|
||||
"context": "app/src/test/kotlin/eu/corentic/springrag/architecture",
|
||||
"methods": 87,
|
||||
"unique": 70,
|
||||
"unique_ratio": 0.805,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "entrypoints/web/src/test/kotlin/eu/corentic/springrag/controller",
|
||||
"methods": 83,
|
||||
"unique": 74,
|
||||
"unique_ratio": 0.892,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "modules/ingestion/src/main/kotlin/eu/corentic/springrag/service/job",
|
||||
"methods": 61,
|
||||
"unique": 55,
|
||||
"unique_ratio": 0.902,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "entrypoints/web/src/main/kotlin/eu/corentic/springrag/controller",
|
||||
"methods": 56,
|
||||
"unique": 53,
|
||||
"unique_ratio": 0.946,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "agents/rag/embabel/src/main/kotlin/eu/corentic/springrag/agent/rag/embabel",
|
||||
"methods": 52,
|
||||
"unique": 52,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "modules/ingestion/src/test/kotlin/eu/corentic/springrag/service/job",
|
||||
"methods": 49,
|
||||
"unique": 48,
|
||||
"unique_ratio": 0.98,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "app/src/systemTest/kotlin/eu/corentic/springrag/system",
|
||||
"methods": 46,
|
||||
"unique": 38,
|
||||
"unique_ratio": 0.826,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "entrypoints/web/src/test/kotlin/eu/corentic/springrag/controller/librechat",
|
||||
"methods": 46,
|
||||
"unique": 40,
|
||||
"unique_ratio": 0.87,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "infrastructure/adapters/search/src/main/kotlin/eu/corentic/springrag/service/port/adapter",
|
||||
"methods": 45,
|
||||
"unique": 44,
|
||||
"unique_ratio": 0.978,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "infrastructure/adapters/search/src/main/kotlin/eu/corentic/springrag/service/storage",
|
||||
"methods": 40,
|
||||
"unique": 27,
|
||||
"unique_ratio": 0.675,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "agents/rag/embabel/src/test/kotlin/eu/corentic/springrag/agent/rag/embabel",
|
||||
"methods": 35,
|
||||
"unique": 25,
|
||||
"unique_ratio": 0.714,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "modules/ingestion/src/test/kotlin/eu/corentic/springrag/batch/listener",
|
||||
"methods": 34,
|
||||
"unique": 31,
|
||||
"unique_ratio": 0.912,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "modules/ingestion/src/integrationTest/kotlin/eu/corentic/springrag/service/job",
|
||||
"methods": 33,
|
||||
"unique": 30,
|
||||
"unique_ratio": 0.909,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "infrastructure/adapters/search/src/test/kotlin/eu/corentic/springrag/service/graph",
|
||||
"methods": 30,
|
||||
"unique": 25,
|
||||
"unique_ratio": 0.833,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "entrypoints/web/src/main/kotlin/eu/corentic/springrag/controller/librechat",
|
||||
"methods": 29,
|
||||
"unique": 29,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "infrastructure/adapters/search/src/test/kotlin/eu/corentic/springrag/service/port/adapter",
|
||||
"methods": 28,
|
||||
"unique": 27,
|
||||
"unique_ratio": 0.964,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "modules/ingestion/src/main/kotlin/eu/corentic/springrag/config",
|
||||
"methods": 26,
|
||||
"unique": 23,
|
||||
"unique_ratio": 0.885,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "infrastructure/adapters/search/src/main/kotlin/eu/corentic/springrag/repository",
|
||||
"methods": 24,
|
||||
"unique": 21,
|
||||
"unique_ratio": 0.875,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "infrastructure/adapters/search/src/systemTest/kotlin/eu/corentic/springrag/repository/graph",
|
||||
"methods": 23,
|
||||
"unique": 22,
|
||||
"unique_ratio": 0.957,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "infrastructure/adapters/doc-parser/src/main/kotlin/eu/corentic/springrag/service/docling",
|
||||
"methods": 21,
|
||||
"unique": 18,
|
||||
"unique_ratio": 0.857,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "infrastructure/adapters/search/src/test/kotlin/eu/corentic/springrag/repository",
|
||||
"methods": 19,
|
||||
"unique": 18,
|
||||
"unique_ratio": 0.947,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "modules/common/src/main/kotlin/eu/corentic/springrag/common/ids",
|
||||
"methods": 18,
|
||||
"unique": 12,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "app/src/e2eTest/kotlin/eu/corentic/springrag/e2e/cucumber/steps",
|
||||
"methods": 17,
|
||||
"unique": 13,
|
||||
"unique_ratio": 0.765,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "modules/ingestion/src/main/kotlin/eu/corentic/springrag/service/chunk",
|
||||
"methods": 17,
|
||||
"unique": 17,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "modules/ingestion/src/test/kotlin/eu/corentic/springrag/batch",
|
||||
"methods": 17,
|
||||
"unique": 17,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "modules/ingestion/src/main/kotlin/eu/corentic/springrag/batch/listener",
|
||||
"methods": 16,
|
||||
"unique": 13,
|
||||
"unique_ratio": 0.812,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "modules/knowledgebase/src/test/kotlin/eu/corentic/springrag/service/knowledgebase",
|
||||
"methods": 16,
|
||||
"unique": 16,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "app/src/integrationTest/kotlin/eu/corentic/springrag/config",
|
||||
"methods": 15,
|
||||
"unique": 5,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "modules/chat/src/systemTest/kotlin/eu/corentic/springrag/config",
|
||||
"methods": 15,
|
||||
"unique": 14,
|
||||
"unique_ratio": 0.933,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "modules/ingestion/src/main/kotlin/eu/corentic/springrag/batch",
|
||||
"methods": 15,
|
||||
"unique": 15,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "modules/security/src/test/kotlin/eu/corentic/springrag/security/service",
|
||||
"methods": 15,
|
||||
"unique": 12,
|
||||
"unique_ratio": 0.8,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "agents/examples/simple-rag/src/test/kotlin/eu/corentic/springrag/example/rag/simple",
|
||||
"methods": 14,
|
||||
"unique": 14,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "agents/summarizer/embabel/src/test/kotlin/eu/corentic/springrag/agent/summarizer/embabel",
|
||||
"methods": 14,
|
||||
"unique": 14,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "app/src/systemTest/kotlin/eu/corentic/springrag/config",
|
||||
"methods": 14,
|
||||
"unique": 14,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "modules/ingestion/src/test/kotlin/eu/corentic/springrag/batch/writer",
|
||||
"methods": 14,
|
||||
"unique": 14,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "agents/rag/embabel/src/main/kotlin/eu/corentic/springrag/agent/rag/embabel/librechat",
|
||||
"methods": 13,
|
||||
"unique": 13,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "platform/test-support/src/main/kotlin/eu/corentic/springrag/testcontainers",
|
||||
"methods": 13,
|
||||
"unique": 13,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "agents/rag/support/src/main/kotlin/eu/corentic/springrag/agent/rag/support",
|
||||
"methods": 12,
|
||||
"unique": 11,
|
||||
"unique_ratio": 0.917,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "agents/summarizer/embabel/src/main/kotlin/eu/corentic/springrag/agent/summarizer/embabel",
|
||||
"methods": 12,
|
||||
"unique": 12,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "agents/tooling/embabel/src/main/kotlin/eu/corentic/springrag/agent/tooling/embabel",
|
||||
"methods": 12,
|
||||
"unique": 12,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "infrastructure/adapters/doc-parser/src/test/kotlin/eu/corentic/springrag/config",
|
||||
"methods": 12,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.5,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "infrastructure/adapters/search/src/main/kotlin/eu/corentic/springrag/service/graph",
|
||||
"methods": 12,
|
||||
"unique": 12,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "modules/ingestion/src/test/kotlin/eu/corentic/springrag/batch/reader",
|
||||
"methods": 12,
|
||||
"unique": 11,
|
||||
"unique_ratio": 0.917,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "agents/rag/support/src/test/kotlin/eu/corentic/springrag/agent/rag/support",
|
||||
"methods": 11,
|
||||
"unique": 11,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "agents/tooling/embabel/src/main/kotlin/eu/corentic/springrag/agent/tooling/embabel/recording",
|
||||
"methods": 11,
|
||||
"unique": 11,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "modules/knowledgebase/src/main/kotlin/eu/corentic/springrag/service/knowledgebase",
|
||||
"methods": 11,
|
||||
"unique": 11,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "entrypoints/web/src/test/kotlin/eu/corentic/springrag/controller/web",
|
||||
"methods": 10,
|
||||
"unique": 10,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "infrastructure/adapters/doc-parser/src/test/kotlin/eu/corentic/springrag/service/docling",
|
||||
"methods": 10,
|
||||
"unique": 10,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "modules/security/src/main/kotlin/eu/corentic/springrag/security/service",
|
||||
"methods": 10,
|
||||
"unique": 10,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "agents/examples/simple-rag/src/main/kotlin/eu/corentic/springrag/example/rag/simple",
|
||||
"methods": 9,
|
||||
"unique": 9,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "infrastructure/adapters/search/src/main/kotlin/eu/corentic/springrag/model/graph",
|
||||
"methods": 9,
|
||||
"unique": 9,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "agents/wikipedia/adapters/src/test/kotlin/eu/corentic/springrag/agent/wikipedia",
|
||||
"methods": 8,
|
||||
"unique": 8,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "buildSrc/src/main/kotlin",
|
||||
"methods": 8,
|
||||
"unique": 8,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "modules/chat/src/test/kotlin/eu/corentic/springrag/service/chat",
|
||||
"methods": 8,
|
||||
"unique": 8,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "modules/common/src/test/kotlin/eu/corentic/springrag/common/ids",
|
||||
"methods": 8,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.5,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "modules/ingestion/src/test/kotlin/eu/corentic/springrag/batch/model",
|
||||
"methods": 8,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "modules/ingestion/src/test/kotlin/eu/corentic/springrag/service/chunk",
|
||||
"methods": 8,
|
||||
"unique": 8,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "infrastructure/adapters/search/src/test/kotlin/eu/corentic/springrag/model/graph",
|
||||
"methods": 7,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.857,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "modules/ingestion/src/test/kotlin/eu/corentic/springrag/batch/partition",
|
||||
"methods": 7,
|
||||
"unique": 7,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "agents/capability/support/src/test/kotlin/eu/corentic/springrag/agent/capability/support",
|
||||
"methods": 6,
|
||||
"unique": 5,
|
||||
"unique_ratio": 0.833,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "agents/tooling/embabel/src/test/kotlin/eu/corentic/springrag/agent/tooling/embabel",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "entrypoints/web/src/main/kotlin/eu/corentic/springrag/controller/web",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "infrastructure/adapters/ai-provider/src/test/kotlin/eu/corentic/springrag/config",
|
||||
"methods": 6,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "infrastructure/adapters/doc-parser/src/systemTest/kotlin/eu/corentic/springrag/config",
|
||||
"methods": 6,
|
||||
"unique": 5,
|
||||
"unique_ratio": 0.833,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "infrastructure/adapters/search/src/main/kotlin/eu/corentic/springrag/health",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "infrastructure/adapters/search/src/systemTest/kotlin/eu/corentic/springrag/system",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "infrastructure/adapters/search/src/test/kotlin/eu/corentic/springrag/health",
|
||||
"methods": 6,
|
||||
"unique": 5,
|
||||
"unique_ratio": 0.833,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "modules/chat/src/main/kotlin/eu/corentic/springrag/service/chat",
|
||||
"methods": 6,
|
||||
"unique": 5,
|
||||
"unique_ratio": 0.833,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "modules/common/src/main/kotlin/eu/corentic/springrag/common",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "modules/security/src/test/kotlin/eu/corentic/springrag/security/config",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "agents/capability/ports/src/main/kotlin/eu/corentic/springrag/agent/capability",
|
||||
"methods": 5,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.6,
|
||||
"sore": "(listCapabilities.firstOrNull|(AgentExecutionContext|return AgentCapabilityDescriptor(\n id = id,\n capabilityType = capabilityType,\n displayName = describedCapability?.displayName ",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "agents/capability/support/src/main/kotlin/eu/corentic/springrag/agent/capability/support",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "app/src/integrationTest/kotlin/eu/corentic/springrag/controller",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "buildSrc/src/test/kotlin",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "entrypoints/web/src/test/kotlin/eu/corentic/springrag/controller/auth",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "infrastructure/adapters/ai-provider/src/test/kotlin/eu/corentic/springrag/service/embedding",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "infrastructure/adapters/chat-memory/src/test/kotlin/eu/corentic/springrag/config",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "modules/ingestion/src/test/kotlin/eu/corentic/springrag/batch/processor",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "modules/knowledgebase/ports/src/main/kotlin/eu/corentic/springrag/model",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "modules/security/src/main/kotlin/eu/corentic/springrag/security/config",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "platform/test-support/src/test/kotlin/eu/corentic/springrag/testcontainers",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "agents/rag/ports/src/main/kotlin/eu/corentic/springrag/agent/rag",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "agents/tooling/agent/src/main/kotlin/eu/corentic/springrag/agent/tooling/agent",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "entrypoints/web/src/test/kotlin/eu/corentic/springrag/config",
|
||||
"methods": 4,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "infrastructure/adapters/ai-provider/src/main/kotlin/eu/corentic/springrag/config",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "infrastructure/adapters/ai-provider/src/test/kotlin/eu/corentic/springrag/health",
|
||||
"methods": 4,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "infrastructure/adapters/search/src/main/kotlin/eu/corentic/springrag/service/cleanup",
|
||||
"methods": 4,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.5,
|
||||
"sore": "info.(deleteByJobId|deleteByKnowledgeBaseId)",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "infrastructure/adapters/search/src/systemTest/kotlin/eu/corentic/springrag/config",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "infrastructure/adapters/search/src/test/kotlin/eu/corentic/springrag/service/cleanup",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "modules/chat/src/integrationTest/kotlin/eu/corentic/springrag/service/chat",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "modules/chat/src/systemTest/kotlin/eu/corentic/springrag/system",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "modules/ingestion/src/main/kotlin/eu/corentic/springrag/batch/model",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "modules/ingestion/src/main/kotlin/eu/corentic/springrag/batch/reader",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "modules/ingestion/src/main/kotlin/eu/corentic/springrag/batch/partition",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "agents/rag/embabel/src/test/kotlin/eu/corentic/springrag/testsupport",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "agents/rag/ports/src/test/kotlin/eu/corentic/springrag/model",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "agents/rag/ports/src/test/kotlin/eu/corentic/springrag/agent/rag",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "agents/wikipedia/adapters/src/main/kotlin/eu/corentic/springrag/agent/wikipedia",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "agents/wikipedia/static/src/main/kotlin/eu/corentic/springrag/agent/wikipedia",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "agents/wikipedia/static/src/test/kotlin/eu/corentic/springrag/agent/wikipedia",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "app/src/integrationTest/kotlin/eu/corentic/springrag/service",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "app/src/test/kotlin/eu/corentic/springrag/config",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "entrypoints/agent-mcp-server/src/test/kotlin/eu/corentic/springrag/mcp",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "entrypoints/agent-mcp-server/src/main/kotlin/eu/corentic/springrag/mcp",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "entrypoints/web/src/main/kotlin/eu/corentic/springrag/config",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "infrastructure/adapters/ai-provider/src/main/kotlin/eu/corentic/springrag/health",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "infrastructure/adapters/ai-provider/src/test/kotlin/eu/corentic/springrag/testsupport",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "infrastructure/adapters/doc-parser/src/main/kotlin/eu/corentic/springrag/config",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "infrastructure/adapters/doc-parser/src/test/kotlin/eu/corentic/springrag/health",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "infrastructure/adapters/doc-parser/src/test/kotlin/eu/corentic/springrag/testsupport",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "infrastructure/adapters/search/src/main/kotlin/eu/corentic/springrag/service/agent",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "infrastructure/adapters/search/src/test/kotlin/eu/corentic/springrag/config",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "infrastructure/adapters/search/src/test/kotlin/eu/corentic/springrag/service/storage",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "infrastructure/adapters/search/src/test/kotlin/eu/corentic/springrag/testsupport",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "modules/ingestion/src/main/kotlin/eu/corentic/springrag/batch/writer",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "modules/ingestion/src/main/kotlin/eu/corentic/springrag/service/document",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
}
|
||||
],
|
||||
"coverage": 0.6,
|
||||
"elapsed_seconds": 0.07
|
||||
}
|
||||
362
experiments/results/ragsak_file_path_k1.json
Normal file
362
experiments/results/ragsak_file_path_k1.json
Normal file
|
|
@ -0,0 +1,362 @@
|
|||
{
|
||||
"strategy": "Option A: File path k=1",
|
||||
"total_contexts": 47,
|
||||
"meaningful_contexts": 43,
|
||||
"total_methods": 1594,
|
||||
"methods_in_good_groups": 17,
|
||||
"sore_successes": 2,
|
||||
"sore_failures": 1,
|
||||
"skip_reasons": {
|
||||
"too_large": 9,
|
||||
"too_diverse": 28,
|
||||
"large_alphabet": 3
|
||||
},
|
||||
"groups": [
|
||||
{
|
||||
"context": "('controller',)",
|
||||
"methods": 144,
|
||||
"unique": 132,
|
||||
"unique_ratio": 0.917,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('job',)",
|
||||
"methods": 143,
|
||||
"unique": 133,
|
||||
"unique_ratio": 0.93,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('config',)",
|
||||
"methods": 140,
|
||||
"unique": 97,
|
||||
"unique_ratio": 0.693,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('embabel',)",
|
||||
"methods": 131,
|
||||
"unique": 119,
|
||||
"unique_ratio": 0.908,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('librechat',)",
|
||||
"methods": 89,
|
||||
"unique": 83,
|
||||
"unique_ratio": 0.933,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('architecture',)",
|
||||
"methods": 87,
|
||||
"unique": 70,
|
||||
"unique_ratio": 0.805,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('graph',)",
|
||||
"methods": 81,
|
||||
"unique": 74,
|
||||
"unique_ratio": 0.914,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('adapter',)",
|
||||
"methods": 76,
|
||||
"unique": 74,
|
||||
"unique_ratio": 0.974,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('system',)",
|
||||
"methods": 58,
|
||||
"unique": 50,
|
||||
"unique_ratio": 0.862,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('listener',)",
|
||||
"methods": 50,
|
||||
"unique": 44,
|
||||
"unique_ratio": 0.88,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('repository',)",
|
||||
"methods": 43,
|
||||
"unique": 39,
|
||||
"unique_ratio": 0.907,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('storage',)",
|
||||
"methods": 43,
|
||||
"unique": 29,
|
||||
"unique_ratio": 0.674,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('support',)",
|
||||
"methods": 34,
|
||||
"unique": 32,
|
||||
"unique_ratio": 0.941,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('batch',)",
|
||||
"methods": 32,
|
||||
"unique": 32,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('docling',)",
|
||||
"methods": 31,
|
||||
"unique": 28,
|
||||
"unique_ratio": 0.903,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('service',)",
|
||||
"methods": 28,
|
||||
"unique": 25,
|
||||
"unique_ratio": 0.893,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('knowledgebase',)",
|
||||
"methods": 27,
|
||||
"unique": 27,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('ids',)",
|
||||
"methods": 26,
|
||||
"unique": 16,
|
||||
"unique_ratio": 0.615,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('chunk',)",
|
||||
"methods": 25,
|
||||
"unique": 25,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('health',)",
|
||||
"methods": 24,
|
||||
"unique": 22,
|
||||
"unique_ratio": 0.917,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('simple',)",
|
||||
"methods": 23,
|
||||
"unique": 23,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('model',)",
|
||||
"methods": 23,
|
||||
"unique": 21,
|
||||
"unique_ratio": 0.913,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('wikipedia',)",
|
||||
"methods": 18,
|
||||
"unique": 17,
|
||||
"unique_ratio": 0.944,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('chat',)",
|
||||
"methods": 18,
|
||||
"unique": 17,
|
||||
"unique_ratio": 0.944,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('testcontainers',)",
|
||||
"methods": 18,
|
||||
"unique": 18,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('steps',)",
|
||||
"methods": 17,
|
||||
"unique": 13,
|
||||
"unique_ratio": 0.765,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('writer',)",
|
||||
"methods": 17,
|
||||
"unique": 17,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('web',)",
|
||||
"methods": 16,
|
||||
"unique": 16,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('reader',)",
|
||||
"methods": 16,
|
||||
"unique": 15,
|
||||
"unique_ratio": 0.938,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('kotlin',)",
|
||||
"methods": 13,
|
||||
"unique": 13,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('testsupport',)",
|
||||
"methods": 12,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "(get|(Builder|Any))",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('recording',)",
|
||||
"methods": 11,
|
||||
"unique": 11,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('partition',)",
|
||||
"methods": 11,
|
||||
"unique": 11,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('agent',)",
|
||||
"methods": 9,
|
||||
"unique": 9,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('cleanup',)",
|
||||
"methods": 8,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('rag',)",
|
||||
"methods": 7,
|
||||
"unique": 7,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('auth',)",
|
||||
"methods": 7,
|
||||
"unique": 7,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('mcp',)",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('common',)",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('processor',)",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('capability',)",
|
||||
"methods": 5,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.6,
|
||||
"sore": "(listCapabilities.firstOrNull|(AgentExecutionContext|return AgentCapabilityDescriptor(\n id = id,\n capabilityType = capabilityType,\n displayName = describedCapability?.displayName ",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('embedding',)",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('document',)",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
}
|
||||
],
|
||||
"coverage": 1.1,
|
||||
"elapsed_seconds": 0.0
|
||||
}
|
||||
450
experiments/results/ragsak_file_path_k2.json
Normal file
450
experiments/results/ragsak_file_path_k2.json
Normal file
|
|
@ -0,0 +1,450 @@
|
|||
{
|
||||
"strategy": "Option A: File path k=2",
|
||||
"total_contexts": 59,
|
||||
"meaningful_contexts": 54,
|
||||
"total_methods": 1594,
|
||||
"methods_in_good_groups": 17,
|
||||
"sore_successes": 2,
|
||||
"sore_failures": 1,
|
||||
"skip_reasons": {
|
||||
"too_large": 8,
|
||||
"too_diverse": 39,
|
||||
"large_alphabet": 4
|
||||
},
|
||||
"groups": [
|
||||
{
|
||||
"context": "('springrag', 'controller')",
|
||||
"methods": 144,
|
||||
"unique": 132,
|
||||
"unique_ratio": 0.917,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('service', 'job')",
|
||||
"methods": 143,
|
||||
"unique": 133,
|
||||
"unique_ratio": 0.93,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'config')",
|
||||
"methods": 128,
|
||||
"unique": 85,
|
||||
"unique_ratio": 0.664,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('rag', 'embabel')",
|
||||
"methods": 87,
|
||||
"unique": 77,
|
||||
"unique_ratio": 0.885,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'architecture')",
|
||||
"methods": 87,
|
||||
"unique": 70,
|
||||
"unique_ratio": 0.805,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('port', 'adapter')",
|
||||
"methods": 76,
|
||||
"unique": 74,
|
||||
"unique_ratio": 0.974,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('controller', 'librechat')",
|
||||
"methods": 75,
|
||||
"unique": 69,
|
||||
"unique_ratio": 0.92,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'system')",
|
||||
"methods": 58,
|
||||
"unique": 50,
|
||||
"unique_ratio": 0.862,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('batch', 'listener')",
|
||||
"methods": 50,
|
||||
"unique": 44,
|
||||
"unique_ratio": 0.88,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'repository')",
|
||||
"methods": 43,
|
||||
"unique": 39,
|
||||
"unique_ratio": 0.907,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('service', 'storage')",
|
||||
"methods": 43,
|
||||
"unique": 29,
|
||||
"unique_ratio": 0.674,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('service', 'graph')",
|
||||
"methods": 42,
|
||||
"unique": 37,
|
||||
"unique_ratio": 0.881,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'batch')",
|
||||
"methods": 32,
|
||||
"unique": 32,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('service', 'docling')",
|
||||
"methods": 31,
|
||||
"unique": 28,
|
||||
"unique_ratio": 0.903,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('service', 'knowledgebase')",
|
||||
"methods": 27,
|
||||
"unique": 27,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('summarizer', 'embabel')",
|
||||
"methods": 26,
|
||||
"unique": 26,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('common', 'ids')",
|
||||
"methods": 26,
|
||||
"unique": 16,
|
||||
"unique_ratio": 0.615,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('service', 'chunk')",
|
||||
"methods": 25,
|
||||
"unique": 25,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('security', 'service')",
|
||||
"methods": 25,
|
||||
"unique": 22,
|
||||
"unique_ratio": 0.88,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'health')",
|
||||
"methods": 24,
|
||||
"unique": 22,
|
||||
"unique_ratio": 0.917,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('rag', 'simple')",
|
||||
"methods": 23,
|
||||
"unique": 23,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('rag', 'support')",
|
||||
"methods": 23,
|
||||
"unique": 22,
|
||||
"unique_ratio": 0.957,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('repository', 'graph')",
|
||||
"methods": 23,
|
||||
"unique": 22,
|
||||
"unique_ratio": 0.957,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('agent', 'wikipedia')",
|
||||
"methods": 18,
|
||||
"unique": 17,
|
||||
"unique_ratio": 0.944,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tooling', 'embabel')",
|
||||
"methods": 18,
|
||||
"unique": 18,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('service', 'chat')",
|
||||
"methods": 18,
|
||||
"unique": 17,
|
||||
"unique_ratio": 0.944,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'testcontainers')",
|
||||
"methods": 18,
|
||||
"unique": 18,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('cucumber', 'steps')",
|
||||
"methods": 17,
|
||||
"unique": 13,
|
||||
"unique_ratio": 0.765,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('batch', 'writer')",
|
||||
"methods": 17,
|
||||
"unique": 17,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('controller', 'web')",
|
||||
"methods": 16,
|
||||
"unique": 16,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('model', 'graph')",
|
||||
"methods": 16,
|
||||
"unique": 15,
|
||||
"unique_ratio": 0.938,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('batch', 'reader')",
|
||||
"methods": 16,
|
||||
"unique": 15,
|
||||
"unique_ratio": 0.938,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('embabel', 'librechat')",
|
||||
"methods": 14,
|
||||
"unique": 14,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'testsupport')",
|
||||
"methods": 12,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "(get|(Builder|Any))",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('batch', 'model')",
|
||||
"methods": 12,
|
||||
"unique": 10,
|
||||
"unique_ratio": 0.833,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('capability', 'support')",
|
||||
"methods": 11,
|
||||
"unique": 10,
|
||||
"unique_ratio": 0.909,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'model')",
|
||||
"methods": 11,
|
||||
"unique": 11,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('embabel', 'recording')",
|
||||
"methods": 11,
|
||||
"unique": 11,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('batch', 'partition')",
|
||||
"methods": 11,
|
||||
"unique": 11,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('security', 'config')",
|
||||
"methods": 11,
|
||||
"unique": 11,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('main', 'kotlin')",
|
||||
"methods": 8,
|
||||
"unique": 8,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('service', 'cleanup')",
|
||||
"methods": 8,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('agent', 'rag')",
|
||||
"methods": 7,
|
||||
"unique": 7,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('controller', 'auth')",
|
||||
"methods": 7,
|
||||
"unique": 7,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tooling', 'agent')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'mcp')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'common')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('batch', 'processor')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('agent', 'capability')",
|
||||
"methods": 5,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.6,
|
||||
"sore": "(listCapabilities.firstOrNull|(AgentExecutionContext|return AgentCapabilityDescriptor(\n id = id,\n capabilityType = capabilityType,\n displayName = describedCapability?.displayName ",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('test', 'kotlin')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('service', 'embedding')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'service')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('service', 'agent')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('service', 'document')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
}
|
||||
],
|
||||
"coverage": 1.1,
|
||||
"elapsed_seconds": 0.01
|
||||
}
|
||||
450
experiments/results/ragsak_file_path_k3.json
Normal file
450
experiments/results/ragsak_file_path_k3.json
Normal file
|
|
@ -0,0 +1,450 @@
|
|||
{
|
||||
"strategy": "Option A: File path k=3",
|
||||
"total_contexts": 59,
|
||||
"meaningful_contexts": 54,
|
||||
"total_methods": 1594,
|
||||
"methods_in_good_groups": 17,
|
||||
"sore_successes": 2,
|
||||
"sore_failures": 1,
|
||||
"skip_reasons": {
|
||||
"too_large": 8,
|
||||
"too_diverse": 39,
|
||||
"large_alphabet": 4
|
||||
},
|
||||
"groups": [
|
||||
{
|
||||
"context": "('corentic', 'springrag', 'controller')",
|
||||
"methods": 144,
|
||||
"unique": 132,
|
||||
"unique_ratio": 0.917,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'service', 'job')",
|
||||
"methods": 143,
|
||||
"unique": 133,
|
||||
"unique_ratio": 0.93,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('corentic', 'springrag', 'config')",
|
||||
"methods": 128,
|
||||
"unique": 85,
|
||||
"unique_ratio": 0.664,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('agent', 'rag', 'embabel')",
|
||||
"methods": 87,
|
||||
"unique": 77,
|
||||
"unique_ratio": 0.885,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('corentic', 'springrag', 'architecture')",
|
||||
"methods": 87,
|
||||
"unique": 70,
|
||||
"unique_ratio": 0.805,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('service', 'port', 'adapter')",
|
||||
"methods": 76,
|
||||
"unique": 74,
|
||||
"unique_ratio": 0.974,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'controller', 'librechat')",
|
||||
"methods": 75,
|
||||
"unique": 69,
|
||||
"unique_ratio": 0.92,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('corentic', 'springrag', 'system')",
|
||||
"methods": 58,
|
||||
"unique": 50,
|
||||
"unique_ratio": 0.862,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'batch', 'listener')",
|
||||
"methods": 50,
|
||||
"unique": 44,
|
||||
"unique_ratio": 0.88,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('corentic', 'springrag', 'repository')",
|
||||
"methods": 43,
|
||||
"unique": 39,
|
||||
"unique_ratio": 0.907,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'service', 'storage')",
|
||||
"methods": 43,
|
||||
"unique": 29,
|
||||
"unique_ratio": 0.674,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'service', 'graph')",
|
||||
"methods": 42,
|
||||
"unique": 37,
|
||||
"unique_ratio": 0.881,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('corentic', 'springrag', 'batch')",
|
||||
"methods": 32,
|
||||
"unique": 32,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'service', 'docling')",
|
||||
"methods": 31,
|
||||
"unique": 28,
|
||||
"unique_ratio": 0.903,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'service', 'knowledgebase')",
|
||||
"methods": 27,
|
||||
"unique": 27,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('agent', 'summarizer', 'embabel')",
|
||||
"methods": 26,
|
||||
"unique": 26,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'common', 'ids')",
|
||||
"methods": 26,
|
||||
"unique": 16,
|
||||
"unique_ratio": 0.615,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'service', 'chunk')",
|
||||
"methods": 25,
|
||||
"unique": 25,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'security', 'service')",
|
||||
"methods": 25,
|
||||
"unique": 22,
|
||||
"unique_ratio": 0.88,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('corentic', 'springrag', 'health')",
|
||||
"methods": 24,
|
||||
"unique": 22,
|
||||
"unique_ratio": 0.917,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('example', 'rag', 'simple')",
|
||||
"methods": 23,
|
||||
"unique": 23,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('agent', 'rag', 'support')",
|
||||
"methods": 23,
|
||||
"unique": 22,
|
||||
"unique_ratio": 0.957,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'repository', 'graph')",
|
||||
"methods": 23,
|
||||
"unique": 22,
|
||||
"unique_ratio": 0.957,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'agent', 'wikipedia')",
|
||||
"methods": 18,
|
||||
"unique": 17,
|
||||
"unique_ratio": 0.944,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('agent', 'tooling', 'embabel')",
|
||||
"methods": 18,
|
||||
"unique": 18,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'service', 'chat')",
|
||||
"methods": 18,
|
||||
"unique": 17,
|
||||
"unique_ratio": 0.944,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('corentic', 'springrag', 'testcontainers')",
|
||||
"methods": 18,
|
||||
"unique": 18,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('e2e', 'cucumber', 'steps')",
|
||||
"methods": 17,
|
||||
"unique": 13,
|
||||
"unique_ratio": 0.765,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'batch', 'writer')",
|
||||
"methods": 17,
|
||||
"unique": 17,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'controller', 'web')",
|
||||
"methods": 16,
|
||||
"unique": 16,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'model', 'graph')",
|
||||
"methods": 16,
|
||||
"unique": 15,
|
||||
"unique_ratio": 0.938,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'batch', 'reader')",
|
||||
"methods": 16,
|
||||
"unique": 15,
|
||||
"unique_ratio": 0.938,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('rag', 'embabel', 'librechat')",
|
||||
"methods": 14,
|
||||
"unique": 14,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('corentic', 'springrag', 'testsupport')",
|
||||
"methods": 12,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "(get|(Builder|Any))",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'batch', 'model')",
|
||||
"methods": 12,
|
||||
"unique": 10,
|
||||
"unique_ratio": 0.833,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('agent', 'capability', 'support')",
|
||||
"methods": 11,
|
||||
"unique": 10,
|
||||
"unique_ratio": 0.909,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('corentic', 'springrag', 'model')",
|
||||
"methods": 11,
|
||||
"unique": 11,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('tooling', 'embabel', 'recording')",
|
||||
"methods": 11,
|
||||
"unique": 11,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'batch', 'partition')",
|
||||
"methods": 11,
|
||||
"unique": 11,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'security', 'config')",
|
||||
"methods": 11,
|
||||
"unique": 11,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('src', 'main', 'kotlin')",
|
||||
"methods": 8,
|
||||
"unique": 8,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'service', 'cleanup')",
|
||||
"methods": 8,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'agent', 'rag')",
|
||||
"methods": 7,
|
||||
"unique": 7,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'controller', 'auth')",
|
||||
"methods": 7,
|
||||
"unique": 7,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('agent', 'tooling', 'agent')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('corentic', 'springrag', 'mcp')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('corentic', 'springrag', 'common')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'batch', 'processor')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'agent', 'capability')",
|
||||
"methods": 5,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.6,
|
||||
"sore": "(listCapabilities.firstOrNull|(AgentExecutionContext|return AgentCapabilityDescriptor(\n id = id,\n capabilityType = capabilityType,\n displayName = describedCapability?.displayName ",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('src', 'test', 'kotlin')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'service', 'embedding')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('corentic', 'springrag', 'service')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'service', 'agent')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'service', 'document')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
}
|
||||
],
|
||||
"coverage": 1.1,
|
||||
"elapsed_seconds": 0.01
|
||||
}
|
||||
1090
experiments/results/ragsak_first_k_sym_1.json
Normal file
1090
experiments/results/ragsak_first_k_sym_1.json
Normal file
File diff suppressed because it is too large
Load diff
1145
experiments/results/ragsak_first_k_sym_2.json
Normal file
1145
experiments/results/ragsak_first_k_sym_2.json
Normal file
File diff suppressed because it is too large
Load diff
953
experiments/results/ragsak_first_k_sym_3.json
Normal file
953
experiments/results/ragsak_first_k_sym_3.json
Normal file
|
|
@ -0,0 +1,953 @@
|
|||
{
|
||||
"strategy": "Option B: First 3 symbols",
|
||||
"total_contexts": 1112,
|
||||
"meaningful_contexts": 117,
|
||||
"total_methods": 1594,
|
||||
"methods_in_good_groups": 191,
|
||||
"sore_successes": 47,
|
||||
"sore_failures": 14,
|
||||
"skip_reasons": {
|
||||
"large_alphabet": 6,
|
||||
"too_diverse": 50
|
||||
},
|
||||
"groups": [
|
||||
{
|
||||
"context": "('VectorChunk', 'mapOf', 'mapOf')",
|
||||
"methods": 13,
|
||||
"unique": 11,
|
||||
"unique_ratio": 0.846,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('ery {', 'stKnowledgeBases()', 'gRequest(m')",
|
||||
"methods": 12,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "ery {.stKnowledgeBases().gRequest(m.(ckKnowledgeBase(re.ertEquals(Kn.\"k|eckKnowledgeBase(r.(sertEquals(K.(\"|(sertEquals(t|sertNull(o)))",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('listOf', 'listOf', 'productionFiles')",
|
||||
"methods": 12,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.5,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('mockk',)",
|
||||
"methods": 11,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.091,
|
||||
"sore": "mockk",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('File', 'writeBytes', 'byteArrayOf')",
|
||||
"methods": 8,
|
||||
"unique": 7,
|
||||
"unique_ratio": 0.875,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('runTest', 'ChatResponse', 'emptyList')",
|
||||
"methods": 7,
|
||||
"unique": 7,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('filesIn', 'assertTrue', 'hasImport')",
|
||||
"methods": 7,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.286,
|
||||
"sore": "filesIn.assertTrue.(hasImport)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('of',)",
|
||||
"methods": 7,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.143,
|
||||
"sore": "of",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('assertEquals', 'of', 'assertFailsWith')",
|
||||
"methods": 7,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.429,
|
||||
"sore": "assertEquals.(of.(assertFailsWith)?)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('runTest', 'mockk', 'mockk')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('listOf', 'listOf', 'forEach')",
|
||||
"methods": 6,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('session', 'use', 'run')",
|
||||
"methods": 6,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.5,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('from', 'now', 'update')",
|
||||
"methods": 6,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.5,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('HybridChunkingConfig', 'service', 'GraphDocument')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('parse', 'KnowledgeBase', 'asKnowledgeBaseId')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('very', 'istKnowledgeBases(', 'agRequest(')",
|
||||
"methods": 5,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.6,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('mockk', 'mockk', 'mockk')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('listOf', 'listOf', 'VectorChunk')",
|
||||
"methods": 5,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.8,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('await', 'pollInterval', 'ofSeconds')",
|
||||
"methods": 5,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.6,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('productionClasses', 'filter', 'contains')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('filesIn', 'filter', 'contains')",
|
||||
"methods": 5,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.4,
|
||||
"sore": "filesIn.filter.contains.assertTrue.(hasImport)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('runTest', 'mockFilePart', 'every')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('every', 'findPageRendering', 'of')",
|
||||
"methods": 5,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.8,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('coEvery', 'ingestMultipart', 'any')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('DoclingConfig', 'assertThatThrownBy', 'validateCriticalSettings')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "DoclingConfig.assertThatThrownBy.validateCriticalSettings.isInstanceOf.hasMessageContaining",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('trim', 'lowercase', 'warn')",
|
||||
"methods": 5,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.4,
|
||||
"sore": "trim.lowercase.(warn)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('every', 'existsById', 'asKnowledgeBaseId')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('upsertStaging', 'of', 'of')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('DocumentInput', 'asJobId', 'asDocumentId')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('defaultCapabilityId',)",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "defaultCapabilityId",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('clearAllMocks',)",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "clearAllMocks",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('Builder',)",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "Builder",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('Any',)",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "Any",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('get',)",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "get",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('mockkObject', 'slot', 'every')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('every', 'every', 'every')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('ToolInvocationPolicyProperties', 'mapOf', 'mapOf')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('registerProperties',)",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "registerProperties",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('assumeTrue', 'isDockerAvailable', 'start')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "assumeTrue.isDockerAvailable.start.pullAndWarmup",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('queryForObject',)",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "queryForObject",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('filesIn', 'assertTrue', 'contains')",
|
||||
"methods": 4,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "filesIn.assertTrue.(contains)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('JobStatus', 'every', 'getJobStatus')",
|
||||
"methods": 4,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.5,
|
||||
"sore": "JobStatus.every.getJobStatus.get.uri.exchange.expectStatus.expectBody.(jsonPath.isEqualTo)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('every', 'getJobStatus', 'get')",
|
||||
"methods": 4,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.5,
|
||||
"sore": "every.getJobStatus.get.uri.exchange.expectStatus.(expectBody.jsonPath.isEqualTo)?",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('runBlocking', 'controller', 'every')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('builder', 'inputType', 'truncate')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('getMethod', 'invoke', 'return configureAndBuild(builder, config)')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "getMethod.invoke.return configureAndBuild(builder, config).configureAndBuild",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('leteByFilter(f', 'lterEquals(M')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "leteByFilter(f.lterEquals(M",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('`when`', 'healthCheckAsync', 'thenReturn')",
|
||||
"methods": 4,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('asJobId', 'asFilename', 'emptyGraphDocument')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('resolveUploadStorageUri',)",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "resolveUploadStorageUri",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('IngestionDocumentState', 'asDocumentId', 'asJobId')",
|
||||
"methods": 4,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('mapOf', 'mapOf', 'requireNotNull')",
|
||||
"methods": 4,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.5,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('createTempFile', 'apply', 'writeText')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('JobInstance', 'JobParametersBuilder', 'addString')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('every', 'fetchTracking', 'asJobId')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('every', 'existsByUsername', 'any')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "every.existsByUsername.any.assertThrows.registerUser.assertEquals",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('AgentExecutionContext',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "AgentExecutionContext",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('runTest', 'TestRequest', 'every')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('map',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "map",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('run', 'Supplier', 'action')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('ChatResponse', 'listOf', 'listOf')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('sortedBy', 'map', 'toDescriptor')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "sortedBy.map.toDescriptor",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('isNullOrBlank', 'error', 'error')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "isNullOrBlank.(error)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('runTest', 'RagInvocation', 'RagRequest')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('runTest', 'invoke', 'WikipediaLookupRequest')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('chat',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "chat",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('mockk', 'also', 'every')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('get', 'uri', 'exchange')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('run', 'collectionPointCount')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "run.collectionPointCount",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('newClient', 'callTool', 'CallToolRequest')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('createKnowledgeBase', 'copyTestDocument', 'copyTestDocument')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('MultipartBodyBuilder', 'part', 'readBytes')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('assertNoMainProjectDependencies', 'listOf', 'listOf')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('scopeFromProject', 'filter', 'contains')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('productionFiles', 'filter', 'contains')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "productionFiles.filter.(contains.(assertTrue)?)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('productionClasses', 'filter', 'hasAnnotationWithName')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('eFromProject()', 'ses()', 't { i')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('joinToString', 'warn', 'return ResponseEntity.status(HttpStatus.BAD_REQUEST)\\n .body(ErrorResponse(\"VALIDATION_ERROR\", \"Validation failed\", errors))')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "joinToString.warn.return ResponseEntity.status(HttpStatus.BAD_REQUEST)\n .body(ErrorResponse(\"VALIDATION_ERROR\", \"Validation failed\", errors)).status.body.ErrorResponse",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('post', 'uri', 'exchange')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "post.uri.exchange.expectStatus.(expectBody.jsonPath.isEqualTo)?",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('every', 'knowledgeBaseExists', 'every')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('KnowledgeBaseResponse', 'now', 'now')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "KnowledgeBaseResponse.(now)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('runTest', 'ChatResponse', 'listOf')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('runTest', 'post', 'uri')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "runTest.post.uri.bodyValue.(ChatRequest|SessionChatRequest).exchange.expectStatus",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('runTest', 'coEvery', 'chatWithMemory')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('JobStatus', 'now', 'minusMinutes')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('runTest', 'mockk', 'every')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "runTest.mockk.every.filename.assertFailsWith.ingestMultipart",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('every', 'getOrCreateAgentKnowledgeBase', 'slot')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('every', 'getJobStatus', 'JobStatus')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "every.getJobStatus.JobStatus.get.uri.exchange.expectStatus.expectBody.(jsonPath.isEqualTo)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('`when`', 'listModels', 'thenReturn')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('assertThrows', 'EmbabelAiHttpClientProperties', 'ofSeconds')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "assertThrows.EmbabelAiHttpClientProperties.ofSeconds",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('DoclingConfig', 'validateCriticalSettings')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "DoclingConfig.validateCriticalSettings",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('ilder()', 'ery(\"', 'pK(5')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('info', 'deleteByJobId')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "info.deleteByJobId",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('info', 'deleteByKnowledgeBaseId')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "info.deleteByKnowledgeBaseId",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('buildImageKey', 'return storeObject(key, bytes, contentTypeFor(format))', 'storeObject')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "buildImageKey.return storeObject(key, bytes, contentTypeFor(format)).storeObject.contentTypeFor",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('resolveLocation', 'builder', 'bucket')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('replace', 'ifBlank', 'lowercase')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "replace.ifBlank.lowercase.return StorageUri.of(\"images/${jobId.value}/$sanitizedId.$extension\").of",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('lowercase',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "lowercase",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('loadObject',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "loadObject",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('parse', 'KnowledgeBaseNode', 'save')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('parse', 'save', 'KnowledgeBaseNode')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('every', 'similaritySearch', 'any')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('DocumentGraphJob', 'asDocumentId', 'asJobId')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('asJobId', 'every', 'deleteByJobId')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "asJobId.every.(deleteByJobId.(assertDoesNotThrow)?)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('runBlocking', 'adminClient', 'post')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('execute',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "execute",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('every', 'process', 'any')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('policy', 'assertTrue', 'shouldRetry')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('state', 'every', 'recordFailure')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('update', 'trimIndent', 'now')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "update.trimIndent.now.insertRow",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('input', 'beforeProcess', 'verify')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('processedDocument', 'every', 'enforce')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('JobParametersBuilder', 'addString', 'toJobParameters')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('JobInstance', 'JobExecution', 'JobParametersBuilder')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('createJobExecution', 'every', 'findExecutionById')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('StagedUploadCleanupService', 'StorageProperties', 'toString')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('JwtService', 'JwtProperties', 'generateToken')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
}
|
||||
],
|
||||
"coverage": 12.0,
|
||||
"elapsed_seconds": 0.1
|
||||
}
|
||||
1104
experiments/results/ragsak_reduce_k1_e005.json
Normal file
1104
experiments/results/ragsak_reduce_k1_e005.json
Normal file
File diff suppressed because it is too large
Load diff
1104
experiments/results/ragsak_reduce_k1_e01.json
Normal file
1104
experiments/results/ragsak_reduce_k1_e01.json
Normal file
File diff suppressed because it is too large
Load diff
1104
experiments/results/ragsak_reduce_k1_e015.json
Normal file
1104
experiments/results/ragsak_reduce_k1_e015.json
Normal file
File diff suppressed because it is too large
Load diff
1104
experiments/results/ragsak_reduce_k1_e02.json
Normal file
1104
experiments/results/ragsak_reduce_k1_e02.json
Normal file
File diff suppressed because it is too large
Load diff
1104
experiments/results/ragsak_reduce_k1_e03.json
Normal file
1104
experiments/results/ragsak_reduce_k1_e03.json
Normal file
File diff suppressed because it is too large
Load diff
1104
experiments/results/ragsak_reduce_k1_e04.json
Normal file
1104
experiments/results/ragsak_reduce_k1_e04.json
Normal file
File diff suppressed because it is too large
Load diff
1159
experiments/results/ragsak_reduce_k2_e005.json
Normal file
1159
experiments/results/ragsak_reduce_k2_e005.json
Normal file
File diff suppressed because it is too large
Load diff
1159
experiments/results/ragsak_reduce_k2_e01.json
Normal file
1159
experiments/results/ragsak_reduce_k2_e01.json
Normal file
File diff suppressed because it is too large
Load diff
1159
experiments/results/ragsak_reduce_k2_e015.json
Normal file
1159
experiments/results/ragsak_reduce_k2_e015.json
Normal file
File diff suppressed because it is too large
Load diff
1159
experiments/results/ragsak_reduce_k2_e02.json
Normal file
1159
experiments/results/ragsak_reduce_k2_e02.json
Normal file
File diff suppressed because it is too large
Load diff
1167
experiments/results/ragsak_reduce_k2_e03.json
Normal file
1167
experiments/results/ragsak_reduce_k2_e03.json
Normal file
File diff suppressed because it is too large
Load diff
1174
experiments/results/ragsak_reduce_k2_e04.json
Normal file
1174
experiments/results/ragsak_reduce_k2_e04.json
Normal file
File diff suppressed because it is too large
Load diff
967
experiments/results/ragsak_reduce_k3_e005.json
Normal file
967
experiments/results/ragsak_reduce_k3_e005.json
Normal file
|
|
@ -0,0 +1,967 @@
|
|||
{
|
||||
"strategy": "Reduce k=3 \u03b5=0.05",
|
||||
"total_contexts": 1112,
|
||||
"meaningful_contexts": 117,
|
||||
"total_methods": 1594,
|
||||
"methods_in_good_groups": 191,
|
||||
"sore_successes": 47,
|
||||
"sore_failures": 14,
|
||||
"skip_reasons": {
|
||||
"large_alphabet": 6,
|
||||
"too_diverse": 50
|
||||
},
|
||||
"groups": [
|
||||
{
|
||||
"context": "('VectorChunk', 'mapOf', 'mapOf')",
|
||||
"methods": 13,
|
||||
"unique": 11,
|
||||
"unique_ratio": 0.846,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('ery {', 'stKnowledgeBases()', 'gRequest(m')",
|
||||
"methods": 12,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "ery {.stKnowledgeBases().gRequest(m.(ckKnowledgeBase(re.ertEquals(Kn.\"k|eckKnowledgeBase(r.(sertEquals(K.(\"|(sertEquals(t|sertNull(o)))",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('listOf', 'listOf', 'productionFiles')",
|
||||
"methods": 12,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.5,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('mockk',)",
|
||||
"methods": 11,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.091,
|
||||
"sore": "mockk",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('File', 'writeBytes', 'byteArrayOf')",
|
||||
"methods": 8,
|
||||
"unique": 7,
|
||||
"unique_ratio": 0.875,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('runTest', 'ChatResponse', 'emptyList')",
|
||||
"methods": 7,
|
||||
"unique": 7,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('filesIn', 'assertTrue', 'hasImport')",
|
||||
"methods": 7,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.286,
|
||||
"sore": "filesIn.assertTrue.(hasImport)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('of',)",
|
||||
"methods": 7,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.143,
|
||||
"sore": "of",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('assertEquals', 'of', 'assertFailsWith')",
|
||||
"methods": 7,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.429,
|
||||
"sore": "assertEquals.(of.(assertFailsWith)?)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('runTest', 'mockk', 'mockk')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('listOf', 'listOf', 'forEach')",
|
||||
"methods": 6,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('session', 'use', 'run')",
|
||||
"methods": 6,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.5,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('from', 'now', 'update')",
|
||||
"methods": 6,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.5,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('HybridChunkingConfig', 'service', 'GraphDocument')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('parse', 'KnowledgeBase', 'asKnowledgeBaseId')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('very', 'istKnowledgeBases(', 'agRequest(')",
|
||||
"methods": 5,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.6,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('mockk', 'mockk', 'mockk')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('listOf', 'listOf', 'VectorChunk')",
|
||||
"methods": 5,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.8,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('await', 'pollInterval', 'ofSeconds')",
|
||||
"methods": 5,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.6,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('productionClasses', 'filter', 'contains')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('filesIn', 'filter', 'contains')",
|
||||
"methods": 5,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.4,
|
||||
"sore": "filesIn.filter.contains.assertTrue.(hasImport)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('runTest', 'mockFilePart', 'every')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('every', 'findPageRendering', 'of')",
|
||||
"methods": 5,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.8,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('coEvery', 'ingestMultipart', 'any')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('DoclingConfig', 'assertThatThrownBy', 'validateCriticalSettings')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "DoclingConfig.assertThatThrownBy.validateCriticalSettings.isInstanceOf.hasMessageContaining",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('trim', 'lowercase', 'warn')",
|
||||
"methods": 5,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.4,
|
||||
"sore": "trim.lowercase.(warn)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('every', 'existsById', 'asKnowledgeBaseId')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('upsertStaging', 'of', 'of')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('DocumentInput', 'asJobId', 'asDocumentId')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('defaultCapabilityId',)",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "defaultCapabilityId",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('clearAllMocks',)",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "clearAllMocks",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('Builder',)",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "Builder",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('Any',)",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "Any",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('get',)",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "get",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('mockkObject', 'slot', 'every')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('every', 'every', 'every')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('ToolInvocationPolicyProperties', 'mapOf', 'mapOf')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('registerProperties',)",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "registerProperties",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('assumeTrue', 'isDockerAvailable', 'start')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "assumeTrue.isDockerAvailable.start.pullAndWarmup",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('queryForObject',)",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "queryForObject",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('filesIn', 'assertTrue', 'contains')",
|
||||
"methods": 4,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "filesIn.assertTrue.(contains)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('JobStatus', 'every', 'getJobStatus')",
|
||||
"methods": 4,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.5,
|
||||
"sore": "JobStatus.every.getJobStatus.get.uri.exchange.expectStatus.expectBody.(jsonPath.isEqualTo)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('every', 'getJobStatus', 'get')",
|
||||
"methods": 4,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.5,
|
||||
"sore": "every.getJobStatus.get.uri.exchange.expectStatus.(expectBody.jsonPath.isEqualTo)?",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('runBlocking', 'controller', 'every')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('builder', 'inputType', 'truncate')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('getMethod', 'invoke', 'return configureAndBuild(builder, config)')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "getMethod.invoke.return configureAndBuild(builder, config).configureAndBuild",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('leteByFilter(f', 'lterEquals(M')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "leteByFilter(f.lterEquals(M",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('`when`', 'healthCheckAsync', 'thenReturn')",
|
||||
"methods": 4,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('asJobId', 'asFilename', 'emptyGraphDocument')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('resolveUploadStorageUri',)",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "resolveUploadStorageUri",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('IngestionDocumentState', 'asDocumentId', 'asJobId')",
|
||||
"methods": 4,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('mapOf', 'mapOf', 'requireNotNull')",
|
||||
"methods": 4,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.5,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('createTempFile', 'apply', 'writeText')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('JobInstance', 'JobParametersBuilder', 'addString')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('every', 'fetchTracking', 'asJobId')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('every', 'existsByUsername', 'any')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "every.existsByUsername.any.assertThrows.registerUser.assertEquals",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('AgentExecutionContext',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "AgentExecutionContext",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('runTest', 'TestRequest', 'every')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('map',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "map",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('run', 'Supplier', 'action')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('ChatResponse', 'listOf', 'listOf')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('sortedBy', 'map', 'toDescriptor')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "sortedBy.map.toDescriptor",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('isNullOrBlank', 'error', 'error')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "isNullOrBlank.(error)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('runTest', 'RagInvocation', 'RagRequest')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('runTest', 'invoke', 'WikipediaLookupRequest')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('chat',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "chat",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('mockk', 'also', 'every')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('get', 'uri', 'exchange')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('run', 'collectionPointCount')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "run.collectionPointCount",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('newClient', 'callTool', 'CallToolRequest')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('createKnowledgeBase', 'copyTestDocument', 'copyTestDocument')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('MultipartBodyBuilder', 'part', 'readBytes')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('assertNoMainProjectDependencies', 'listOf', 'listOf')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('scopeFromProject', 'filter', 'contains')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('productionFiles', 'filter', 'contains')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "productionFiles.filter.(contains.(assertTrue)?)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('productionClasses', 'filter', 'hasAnnotationWithName')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('eFromProject()', 'ses()', 't { i')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('joinToString', 'warn', 'return ResponseEntity.status(HttpStatus.BAD_REQUEST)\\n .body(ErrorResponse(\"VALIDATION_ERROR\", \"Validation failed\", errors))')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "joinToString.warn.return ResponseEntity.status(HttpStatus.BAD_REQUEST)\n .body(ErrorResponse(\"VALIDATION_ERROR\", \"Validation failed\", errors)).status.body.ErrorResponse",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('post', 'uri', 'exchange')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "post.uri.exchange.expectStatus.(expectBody.jsonPath.isEqualTo)?",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('every', 'knowledgeBaseExists', 'every')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('KnowledgeBaseResponse', 'now', 'now')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "KnowledgeBaseResponse.(now)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('runTest', 'ChatResponse', 'listOf')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('runTest', 'post', 'uri')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "runTest.post.uri.bodyValue.(ChatRequest|SessionChatRequest).exchange.expectStatus",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('runTest', 'coEvery', 'chatWithMemory')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('JobStatus', 'now', 'minusMinutes')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('runTest', 'mockk', 'every')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "runTest.mockk.every.filename.assertFailsWith.ingestMultipart",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('every', 'getOrCreateAgentKnowledgeBase', 'slot')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('every', 'getJobStatus', 'JobStatus')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "every.getJobStatus.JobStatus.get.uri.exchange.expectStatus.expectBody.(jsonPath.isEqualTo)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('`when`', 'listModels', 'thenReturn')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('assertThrows', 'EmbabelAiHttpClientProperties', 'ofSeconds')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "assertThrows.EmbabelAiHttpClientProperties.ofSeconds",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('DoclingConfig', 'validateCriticalSettings')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "DoclingConfig.validateCriticalSettings",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('ilder()', 'ery(\"', 'pK(5')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('info', 'deleteByJobId')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "info.deleteByJobId",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('info', 'deleteByKnowledgeBaseId')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "info.deleteByKnowledgeBaseId",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('buildImageKey', 'return storeObject(key, bytes, contentTypeFor(format))', 'storeObject')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "buildImageKey.return storeObject(key, bytes, contentTypeFor(format)).storeObject.contentTypeFor",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('resolveLocation', 'builder', 'bucket')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('replace', 'ifBlank', 'lowercase')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "replace.ifBlank.lowercase.return StorageUri.of(\"images/${jobId.value}/$sanitizedId.$extension\").of",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('lowercase',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "lowercase",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('loadObject',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "loadObject",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('parse', 'KnowledgeBaseNode', 'save')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('parse', 'save', 'KnowledgeBaseNode')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('every', 'similaritySearch', 'any')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('DocumentGraphJob', 'asDocumentId', 'asJobId')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('asJobId', 'every', 'deleteByJobId')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "asJobId.every.(deleteByJobId.(assertDoesNotThrow)?)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('runBlocking', 'adminClient', 'post')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('execute',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "execute",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('every', 'process', 'any')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('policy', 'assertTrue', 'shouldRetry')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('state', 'every', 'recordFailure')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('update', 'trimIndent', 'now')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "update.trimIndent.now.insertRow",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('input', 'beforeProcess', 'verify')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('processedDocument', 'every', 'enforce')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('JobParametersBuilder', 'addString', 'toJobParameters')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('JobInstance', 'JobExecution', 'JobParametersBuilder')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('createJobExecution', 'every', 'findExecutionById')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('StagedUploadCleanupService', 'StorageProperties', 'toString')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('JwtService', 'JwtProperties', 'generateToken')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
}
|
||||
],
|
||||
"coverage": 12.0,
|
||||
"elapsed_seconds": 0.09,
|
||||
"merge_info": {
|
||||
"merges": {
|
||||
"iterations": 1,
|
||||
"merges": 0,
|
||||
"comparisons": 27495,
|
||||
"contexts_before": 1112,
|
||||
"contexts_after": 1112,
|
||||
"threshold": 0.05,
|
||||
"merge_log": []
|
||||
},
|
||||
"threshold": 0.05,
|
||||
"contexts_before": 1112,
|
||||
"contexts_after": 1112
|
||||
}
|
||||
}
|
||||
967
experiments/results/ragsak_reduce_k3_e01.json
Normal file
967
experiments/results/ragsak_reduce_k3_e01.json
Normal file
|
|
@ -0,0 +1,967 @@
|
|||
{
|
||||
"strategy": "Reduce k=3 \u03b5=0.1",
|
||||
"total_contexts": 1112,
|
||||
"meaningful_contexts": 117,
|
||||
"total_methods": 1594,
|
||||
"methods_in_good_groups": 191,
|
||||
"sore_successes": 47,
|
||||
"sore_failures": 14,
|
||||
"skip_reasons": {
|
||||
"large_alphabet": 6,
|
||||
"too_diverse": 50
|
||||
},
|
||||
"groups": [
|
||||
{
|
||||
"context": "('VectorChunk', 'mapOf', 'mapOf')",
|
||||
"methods": 13,
|
||||
"unique": 11,
|
||||
"unique_ratio": 0.846,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('ery {', 'stKnowledgeBases()', 'gRequest(m')",
|
||||
"methods": 12,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "ery {.stKnowledgeBases().gRequest(m.(ckKnowledgeBase(re.ertEquals(Kn.\"k|eckKnowledgeBase(r.(sertEquals(K.(\"|(sertEquals(t|sertNull(o)))",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('listOf', 'listOf', 'productionFiles')",
|
||||
"methods": 12,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.5,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('mockk',)",
|
||||
"methods": 11,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.091,
|
||||
"sore": "mockk",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('File', 'writeBytes', 'byteArrayOf')",
|
||||
"methods": 8,
|
||||
"unique": 7,
|
||||
"unique_ratio": 0.875,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('runTest', 'ChatResponse', 'emptyList')",
|
||||
"methods": 7,
|
||||
"unique": 7,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('filesIn', 'assertTrue', 'hasImport')",
|
||||
"methods": 7,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.286,
|
||||
"sore": "filesIn.assertTrue.(hasImport)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('of',)",
|
||||
"methods": 7,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.143,
|
||||
"sore": "of",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('assertEquals', 'of', 'assertFailsWith')",
|
||||
"methods": 7,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.429,
|
||||
"sore": "assertEquals.(of.(assertFailsWith)?)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('runTest', 'mockk', 'mockk')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('listOf', 'listOf', 'forEach')",
|
||||
"methods": 6,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('session', 'use', 'run')",
|
||||
"methods": 6,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.5,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('from', 'now', 'update')",
|
||||
"methods": 6,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.5,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('HybridChunkingConfig', 'service', 'GraphDocument')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('parse', 'KnowledgeBase', 'asKnowledgeBaseId')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('very', 'istKnowledgeBases(', 'agRequest(')",
|
||||
"methods": 5,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.6,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('mockk', 'mockk', 'mockk')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('listOf', 'listOf', 'VectorChunk')",
|
||||
"methods": 5,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.8,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('await', 'pollInterval', 'ofSeconds')",
|
||||
"methods": 5,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.6,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('productionClasses', 'filter', 'contains')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('filesIn', 'filter', 'contains')",
|
||||
"methods": 5,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.4,
|
||||
"sore": "filesIn.filter.contains.assertTrue.(hasImport)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('runTest', 'mockFilePart', 'every')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('every', 'findPageRendering', 'of')",
|
||||
"methods": 5,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.8,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('coEvery', 'ingestMultipart', 'any')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('DoclingConfig', 'assertThatThrownBy', 'validateCriticalSettings')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "DoclingConfig.assertThatThrownBy.validateCriticalSettings.isInstanceOf.hasMessageContaining",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('trim', 'lowercase', 'warn')",
|
||||
"methods": 5,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.4,
|
||||
"sore": "trim.lowercase.(warn)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('every', 'existsById', 'asKnowledgeBaseId')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('upsertStaging', 'of', 'of')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('DocumentInput', 'asJobId', 'asDocumentId')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('defaultCapabilityId',)",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "defaultCapabilityId",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('clearAllMocks',)",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "clearAllMocks",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('Builder',)",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "Builder",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('Any',)",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "Any",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('get',)",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "get",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('mockkObject', 'slot', 'every')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('every', 'every', 'every')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('ToolInvocationPolicyProperties', 'mapOf', 'mapOf')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('registerProperties',)",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "registerProperties",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('assumeTrue', 'isDockerAvailable', 'start')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "assumeTrue.isDockerAvailable.start.pullAndWarmup",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('queryForObject',)",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "queryForObject",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('filesIn', 'assertTrue', 'contains')",
|
||||
"methods": 4,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "filesIn.assertTrue.(contains)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('JobStatus', 'every', 'getJobStatus')",
|
||||
"methods": 4,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.5,
|
||||
"sore": "JobStatus.every.getJobStatus.get.uri.exchange.expectStatus.expectBody.(jsonPath.isEqualTo)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('every', 'getJobStatus', 'get')",
|
||||
"methods": 4,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.5,
|
||||
"sore": "every.getJobStatus.get.uri.exchange.expectStatus.(expectBody.jsonPath.isEqualTo)?",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('runBlocking', 'controller', 'every')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('builder', 'inputType', 'truncate')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('getMethod', 'invoke', 'return configureAndBuild(builder, config)')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "getMethod.invoke.return configureAndBuild(builder, config).configureAndBuild",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('leteByFilter(f', 'lterEquals(M')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "leteByFilter(f.lterEquals(M",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('`when`', 'healthCheckAsync', 'thenReturn')",
|
||||
"methods": 4,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('asJobId', 'asFilename', 'emptyGraphDocument')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('resolveUploadStorageUri',)",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "resolveUploadStorageUri",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('IngestionDocumentState', 'asDocumentId', 'asJobId')",
|
||||
"methods": 4,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('mapOf', 'mapOf', 'requireNotNull')",
|
||||
"methods": 4,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.5,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('createTempFile', 'apply', 'writeText')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('JobInstance', 'JobParametersBuilder', 'addString')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('every', 'fetchTracking', 'asJobId')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('every', 'existsByUsername', 'any')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "every.existsByUsername.any.assertThrows.registerUser.assertEquals",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('AgentExecutionContext',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "AgentExecutionContext",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('runTest', 'TestRequest', 'every')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('map',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "map",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('run', 'Supplier', 'action')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('ChatResponse', 'listOf', 'listOf')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('sortedBy', 'map', 'toDescriptor')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "sortedBy.map.toDescriptor",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('isNullOrBlank', 'error', 'error')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "isNullOrBlank.(error)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('runTest', 'RagInvocation', 'RagRequest')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('runTest', 'invoke', 'WikipediaLookupRequest')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('chat',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "chat",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('mockk', 'also', 'every')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('get', 'uri', 'exchange')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('run', 'collectionPointCount')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "run.collectionPointCount",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('newClient', 'callTool', 'CallToolRequest')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('createKnowledgeBase', 'copyTestDocument', 'copyTestDocument')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('MultipartBodyBuilder', 'part', 'readBytes')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('assertNoMainProjectDependencies', 'listOf', 'listOf')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('scopeFromProject', 'filter', 'contains')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('productionFiles', 'filter', 'contains')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "productionFiles.filter.(contains.(assertTrue)?)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('productionClasses', 'filter', 'hasAnnotationWithName')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('eFromProject()', 'ses()', 't { i')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('joinToString', 'warn', 'return ResponseEntity.status(HttpStatus.BAD_REQUEST)\\n .body(ErrorResponse(\"VALIDATION_ERROR\", \"Validation failed\", errors))')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "joinToString.warn.return ResponseEntity.status(HttpStatus.BAD_REQUEST)\n .body(ErrorResponse(\"VALIDATION_ERROR\", \"Validation failed\", errors)).status.body.ErrorResponse",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('post', 'uri', 'exchange')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "post.uri.exchange.expectStatus.(expectBody.jsonPath.isEqualTo)?",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('every', 'knowledgeBaseExists', 'every')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('KnowledgeBaseResponse', 'now', 'now')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "KnowledgeBaseResponse.(now)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('runTest', 'ChatResponse', 'listOf')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('runTest', 'post', 'uri')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "runTest.post.uri.bodyValue.(ChatRequest|SessionChatRequest).exchange.expectStatus",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('runTest', 'coEvery', 'chatWithMemory')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('JobStatus', 'now', 'minusMinutes')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('runTest', 'mockk', 'every')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "runTest.mockk.every.filename.assertFailsWith.ingestMultipart",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('every', 'getOrCreateAgentKnowledgeBase', 'slot')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('every', 'getJobStatus', 'JobStatus')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "every.getJobStatus.JobStatus.get.uri.exchange.expectStatus.expectBody.(jsonPath.isEqualTo)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('`when`', 'listModels', 'thenReturn')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('assertThrows', 'EmbabelAiHttpClientProperties', 'ofSeconds')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "assertThrows.EmbabelAiHttpClientProperties.ofSeconds",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('DoclingConfig', 'validateCriticalSettings')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "DoclingConfig.validateCriticalSettings",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('ilder()', 'ery(\"', 'pK(5')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('info', 'deleteByJobId')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "info.deleteByJobId",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('info', 'deleteByKnowledgeBaseId')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "info.deleteByKnowledgeBaseId",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('buildImageKey', 'return storeObject(key, bytes, contentTypeFor(format))', 'storeObject')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "buildImageKey.return storeObject(key, bytes, contentTypeFor(format)).storeObject.contentTypeFor",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('resolveLocation', 'builder', 'bucket')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('replace', 'ifBlank', 'lowercase')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "replace.ifBlank.lowercase.return StorageUri.of(\"images/${jobId.value}/$sanitizedId.$extension\").of",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('lowercase',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "lowercase",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('loadObject',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "loadObject",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('parse', 'KnowledgeBaseNode', 'save')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('parse', 'save', 'KnowledgeBaseNode')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('every', 'similaritySearch', 'any')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('DocumentGraphJob', 'asDocumentId', 'asJobId')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('asJobId', 'every', 'deleteByJobId')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "asJobId.every.(deleteByJobId.(assertDoesNotThrow)?)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('runBlocking', 'adminClient', 'post')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('execute',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "execute",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('every', 'process', 'any')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('policy', 'assertTrue', 'shouldRetry')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('state', 'every', 'recordFailure')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('update', 'trimIndent', 'now')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "update.trimIndent.now.insertRow",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('input', 'beforeProcess', 'verify')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('processedDocument', 'every', 'enforce')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('JobParametersBuilder', 'addString', 'toJobParameters')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('JobInstance', 'JobExecution', 'JobParametersBuilder')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('createJobExecution', 'every', 'findExecutionById')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('StagedUploadCleanupService', 'StorageProperties', 'toString')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('JwtService', 'JwtProperties', 'generateToken')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
}
|
||||
],
|
||||
"coverage": 12.0,
|
||||
"elapsed_seconds": 0.12,
|
||||
"merge_info": {
|
||||
"merges": {
|
||||
"iterations": 1,
|
||||
"merges": 0,
|
||||
"comparisons": 27495,
|
||||
"contexts_before": 1112,
|
||||
"contexts_after": 1112,
|
||||
"threshold": 0.1,
|
||||
"merge_log": []
|
||||
},
|
||||
"threshold": 0.1,
|
||||
"contexts_before": 1112,
|
||||
"contexts_after": 1112
|
||||
}
|
||||
}
|
||||
967
experiments/results/ragsak_reduce_k3_e015.json
Normal file
967
experiments/results/ragsak_reduce_k3_e015.json
Normal file
|
|
@ -0,0 +1,967 @@
|
|||
{
|
||||
"strategy": "Reduce k=3 \u03b5=0.15",
|
||||
"total_contexts": 1112,
|
||||
"meaningful_contexts": 117,
|
||||
"total_methods": 1594,
|
||||
"methods_in_good_groups": 191,
|
||||
"sore_successes": 47,
|
||||
"sore_failures": 14,
|
||||
"skip_reasons": {
|
||||
"large_alphabet": 6,
|
||||
"too_diverse": 50
|
||||
},
|
||||
"groups": [
|
||||
{
|
||||
"context": "('VectorChunk', 'mapOf', 'mapOf')",
|
||||
"methods": 13,
|
||||
"unique": 11,
|
||||
"unique_ratio": 0.846,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('ery {', 'stKnowledgeBases()', 'gRequest(m')",
|
||||
"methods": 12,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "ery {.stKnowledgeBases().gRequest(m.(ckKnowledgeBase(re.ertEquals(Kn.\"k|eckKnowledgeBase(r.(sertEquals(K.(\"|(sertEquals(t|sertNull(o)))",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('listOf', 'listOf', 'productionFiles')",
|
||||
"methods": 12,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.5,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('mockk',)",
|
||||
"methods": 11,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.091,
|
||||
"sore": "mockk",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('File', 'writeBytes', 'byteArrayOf')",
|
||||
"methods": 8,
|
||||
"unique": 7,
|
||||
"unique_ratio": 0.875,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('runTest', 'ChatResponse', 'emptyList')",
|
||||
"methods": 7,
|
||||
"unique": 7,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('filesIn', 'assertTrue', 'hasImport')",
|
||||
"methods": 7,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.286,
|
||||
"sore": "filesIn.assertTrue.(hasImport)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('of',)",
|
||||
"methods": 7,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.143,
|
||||
"sore": "of",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('assertEquals', 'of', 'assertFailsWith')",
|
||||
"methods": 7,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.429,
|
||||
"sore": "assertEquals.(of.(assertFailsWith)?)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('runTest', 'mockk', 'mockk')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('listOf', 'listOf', 'forEach')",
|
||||
"methods": 6,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('session', 'use', 'run')",
|
||||
"methods": 6,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.5,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('from', 'now', 'update')",
|
||||
"methods": 6,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.5,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('HybridChunkingConfig', 'service', 'GraphDocument')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('parse', 'KnowledgeBase', 'asKnowledgeBaseId')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('very', 'istKnowledgeBases(', 'agRequest(')",
|
||||
"methods": 5,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.6,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('mockk', 'mockk', 'mockk')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('listOf', 'listOf', 'VectorChunk')",
|
||||
"methods": 5,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.8,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('await', 'pollInterval', 'ofSeconds')",
|
||||
"methods": 5,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.6,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('productionClasses', 'filter', 'contains')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('filesIn', 'filter', 'contains')",
|
||||
"methods": 5,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.4,
|
||||
"sore": "filesIn.filter.contains.assertTrue.(hasImport)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('runTest', 'mockFilePart', 'every')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('every', 'findPageRendering', 'of')",
|
||||
"methods": 5,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.8,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('coEvery', 'ingestMultipart', 'any')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('DoclingConfig', 'assertThatThrownBy', 'validateCriticalSettings')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "DoclingConfig.assertThatThrownBy.validateCriticalSettings.isInstanceOf.hasMessageContaining",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('trim', 'lowercase', 'warn')",
|
||||
"methods": 5,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.4,
|
||||
"sore": "trim.lowercase.(warn)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('every', 'existsById', 'asKnowledgeBaseId')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('upsertStaging', 'of', 'of')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('DocumentInput', 'asJobId', 'asDocumentId')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('defaultCapabilityId',)",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "defaultCapabilityId",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('clearAllMocks',)",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "clearAllMocks",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('Builder',)",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "Builder",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('Any',)",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "Any",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('get',)",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "get",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('mockkObject', 'slot', 'every')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('every', 'every', 'every')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('ToolInvocationPolicyProperties', 'mapOf', 'mapOf')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('registerProperties',)",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "registerProperties",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('assumeTrue', 'isDockerAvailable', 'start')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "assumeTrue.isDockerAvailable.start.pullAndWarmup",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('queryForObject',)",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "queryForObject",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('filesIn', 'assertTrue', 'contains')",
|
||||
"methods": 4,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "filesIn.assertTrue.(contains)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('JobStatus', 'every', 'getJobStatus')",
|
||||
"methods": 4,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.5,
|
||||
"sore": "JobStatus.every.getJobStatus.get.uri.exchange.expectStatus.expectBody.(jsonPath.isEqualTo)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('every', 'getJobStatus', 'get')",
|
||||
"methods": 4,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.5,
|
||||
"sore": "every.getJobStatus.get.uri.exchange.expectStatus.(expectBody.jsonPath.isEqualTo)?",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('runBlocking', 'controller', 'every')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('builder', 'inputType', 'truncate')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('getMethod', 'invoke', 'return configureAndBuild(builder, config)')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "getMethod.invoke.return configureAndBuild(builder, config).configureAndBuild",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('leteByFilter(f', 'lterEquals(M')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "leteByFilter(f.lterEquals(M",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('`when`', 'healthCheckAsync', 'thenReturn')",
|
||||
"methods": 4,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('asJobId', 'asFilename', 'emptyGraphDocument')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('resolveUploadStorageUri',)",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "resolveUploadStorageUri",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('IngestionDocumentState', 'asDocumentId', 'asJobId')",
|
||||
"methods": 4,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('mapOf', 'mapOf', 'requireNotNull')",
|
||||
"methods": 4,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.5,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('createTempFile', 'apply', 'writeText')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('JobInstance', 'JobParametersBuilder', 'addString')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('every', 'fetchTracking', 'asJobId')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('every', 'existsByUsername', 'any')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "every.existsByUsername.any.assertThrows.registerUser.assertEquals",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('AgentExecutionContext',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "AgentExecutionContext",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('runTest', 'TestRequest', 'every')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('map',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "map",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('run', 'Supplier', 'action')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('ChatResponse', 'listOf', 'listOf')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('sortedBy', 'map', 'toDescriptor')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "sortedBy.map.toDescriptor",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('isNullOrBlank', 'error', 'error')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "isNullOrBlank.(error)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('runTest', 'RagInvocation', 'RagRequest')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('runTest', 'invoke', 'WikipediaLookupRequest')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('chat',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "chat",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('mockk', 'also', 'every')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('get', 'uri', 'exchange')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('run', 'collectionPointCount')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "run.collectionPointCount",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('newClient', 'callTool', 'CallToolRequest')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('createKnowledgeBase', 'copyTestDocument', 'copyTestDocument')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('MultipartBodyBuilder', 'part', 'readBytes')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('assertNoMainProjectDependencies', 'listOf', 'listOf')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('scopeFromProject', 'filter', 'contains')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('productionFiles', 'filter', 'contains')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "productionFiles.filter.(contains.(assertTrue)?)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('productionClasses', 'filter', 'hasAnnotationWithName')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('eFromProject()', 'ses()', 't { i')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('joinToString', 'warn', 'return ResponseEntity.status(HttpStatus.BAD_REQUEST)\\n .body(ErrorResponse(\"VALIDATION_ERROR\", \"Validation failed\", errors))')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "joinToString.warn.return ResponseEntity.status(HttpStatus.BAD_REQUEST)\n .body(ErrorResponse(\"VALIDATION_ERROR\", \"Validation failed\", errors)).status.body.ErrorResponse",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('post', 'uri', 'exchange')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "post.uri.exchange.expectStatus.(expectBody.jsonPath.isEqualTo)?",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('every', 'knowledgeBaseExists', 'every')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('KnowledgeBaseResponse', 'now', 'now')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "KnowledgeBaseResponse.(now)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('runTest', 'ChatResponse', 'listOf')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('runTest', 'post', 'uri')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "runTest.post.uri.bodyValue.(ChatRequest|SessionChatRequest).exchange.expectStatus",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('runTest', 'coEvery', 'chatWithMemory')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('JobStatus', 'now', 'minusMinutes')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('runTest', 'mockk', 'every')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "runTest.mockk.every.filename.assertFailsWith.ingestMultipart",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('every', 'getOrCreateAgentKnowledgeBase', 'slot')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('every', 'getJobStatus', 'JobStatus')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "every.getJobStatus.JobStatus.get.uri.exchange.expectStatus.expectBody.(jsonPath.isEqualTo)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('`when`', 'listModels', 'thenReturn')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('assertThrows', 'EmbabelAiHttpClientProperties', 'ofSeconds')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "assertThrows.EmbabelAiHttpClientProperties.ofSeconds",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('DoclingConfig', 'validateCriticalSettings')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "DoclingConfig.validateCriticalSettings",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('ilder()', 'ery(\"', 'pK(5')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('info', 'deleteByJobId')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "info.deleteByJobId",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('info', 'deleteByKnowledgeBaseId')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "info.deleteByKnowledgeBaseId",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('buildImageKey', 'return storeObject(key, bytes, contentTypeFor(format))', 'storeObject')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "buildImageKey.return storeObject(key, bytes, contentTypeFor(format)).storeObject.contentTypeFor",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('resolveLocation', 'builder', 'bucket')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('replace', 'ifBlank', 'lowercase')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "replace.ifBlank.lowercase.return StorageUri.of(\"images/${jobId.value}/$sanitizedId.$extension\").of",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('lowercase',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "lowercase",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('loadObject',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "loadObject",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('parse', 'KnowledgeBaseNode', 'save')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('parse', 'save', 'KnowledgeBaseNode')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('every', 'similaritySearch', 'any')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('DocumentGraphJob', 'asDocumentId', 'asJobId')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('asJobId', 'every', 'deleteByJobId')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "asJobId.every.(deleteByJobId.(assertDoesNotThrow)?)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('runBlocking', 'adminClient', 'post')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('execute',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "execute",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('every', 'process', 'any')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('policy', 'assertTrue', 'shouldRetry')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('state', 'every', 'recordFailure')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('update', 'trimIndent', 'now')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "update.trimIndent.now.insertRow",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('input', 'beforeProcess', 'verify')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('processedDocument', 'every', 'enforce')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('JobParametersBuilder', 'addString', 'toJobParameters')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('JobInstance', 'JobExecution', 'JobParametersBuilder')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('createJobExecution', 'every', 'findExecutionById')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('StagedUploadCleanupService', 'StorageProperties', 'toString')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('JwtService', 'JwtProperties', 'generateToken')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
}
|
||||
],
|
||||
"coverage": 12.0,
|
||||
"elapsed_seconds": 0.04,
|
||||
"merge_info": {
|
||||
"merges": {
|
||||
"iterations": 1,
|
||||
"merges": 0,
|
||||
"comparisons": 27495,
|
||||
"contexts_before": 1112,
|
||||
"contexts_after": 1112,
|
||||
"threshold": 0.15,
|
||||
"merge_log": []
|
||||
},
|
||||
"threshold": 0.15,
|
||||
"contexts_before": 1112,
|
||||
"contexts_after": 1112
|
||||
}
|
||||
}
|
||||
967
experiments/results/ragsak_reduce_k3_e02.json
Normal file
967
experiments/results/ragsak_reduce_k3_e02.json
Normal file
|
|
@ -0,0 +1,967 @@
|
|||
{
|
||||
"strategy": "Reduce k=3 \u03b5=0.2",
|
||||
"total_contexts": 1112,
|
||||
"meaningful_contexts": 117,
|
||||
"total_methods": 1594,
|
||||
"methods_in_good_groups": 191,
|
||||
"sore_successes": 47,
|
||||
"sore_failures": 14,
|
||||
"skip_reasons": {
|
||||
"large_alphabet": 6,
|
||||
"too_diverse": 50
|
||||
},
|
||||
"groups": [
|
||||
{
|
||||
"context": "('VectorChunk', 'mapOf', 'mapOf')",
|
||||
"methods": 13,
|
||||
"unique": 11,
|
||||
"unique_ratio": 0.846,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('ery {', 'stKnowledgeBases()', 'gRequest(m')",
|
||||
"methods": 12,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "ery {.stKnowledgeBases().gRequest(m.(ckKnowledgeBase(re.ertEquals(Kn.\"k|eckKnowledgeBase(r.(sertEquals(K.(\"|(sertEquals(t|sertNull(o)))",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('listOf', 'listOf', 'productionFiles')",
|
||||
"methods": 12,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.5,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('mockk',)",
|
||||
"methods": 11,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.091,
|
||||
"sore": "mockk",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('File', 'writeBytes', 'byteArrayOf')",
|
||||
"methods": 8,
|
||||
"unique": 7,
|
||||
"unique_ratio": 0.875,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('runTest', 'ChatResponse', 'emptyList')",
|
||||
"methods": 7,
|
||||
"unique": 7,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('filesIn', 'assertTrue', 'hasImport')",
|
||||
"methods": 7,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.286,
|
||||
"sore": "filesIn.assertTrue.(hasImport)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('of',)",
|
||||
"methods": 7,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.143,
|
||||
"sore": "of",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('assertEquals', 'of', 'assertFailsWith')",
|
||||
"methods": 7,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.429,
|
||||
"sore": "assertEquals.(of.(assertFailsWith)?)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('runTest', 'mockk', 'mockk')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('listOf', 'listOf', 'forEach')",
|
||||
"methods": 6,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('session', 'use', 'run')",
|
||||
"methods": 6,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.5,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('from', 'now', 'update')",
|
||||
"methods": 6,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.5,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('HybridChunkingConfig', 'service', 'GraphDocument')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('parse', 'KnowledgeBase', 'asKnowledgeBaseId')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('very', 'istKnowledgeBases(', 'agRequest(')",
|
||||
"methods": 5,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.6,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('mockk', 'mockk', 'mockk')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('listOf', 'listOf', 'VectorChunk')",
|
||||
"methods": 5,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.8,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('await', 'pollInterval', 'ofSeconds')",
|
||||
"methods": 5,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.6,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('productionClasses', 'filter', 'contains')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('filesIn', 'filter', 'contains')",
|
||||
"methods": 5,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.4,
|
||||
"sore": "filesIn.filter.contains.assertTrue.(hasImport)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('runTest', 'mockFilePart', 'every')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('every', 'findPageRendering', 'of')",
|
||||
"methods": 5,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.8,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('coEvery', 'ingestMultipart', 'any')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('DoclingConfig', 'assertThatThrownBy', 'validateCriticalSettings')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "DoclingConfig.assertThatThrownBy.validateCriticalSettings.isInstanceOf.hasMessageContaining",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('trim', 'lowercase', 'warn')",
|
||||
"methods": 5,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.4,
|
||||
"sore": "trim.lowercase.(warn)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('every', 'existsById', 'asKnowledgeBaseId')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('upsertStaging', 'of', 'of')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('DocumentInput', 'asJobId', 'asDocumentId')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('defaultCapabilityId',)",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "defaultCapabilityId",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('clearAllMocks',)",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "clearAllMocks",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('Builder',)",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "Builder",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('Any',)",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "Any",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('get',)",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "get",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('mockkObject', 'slot', 'every')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('every', 'every', 'every')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('ToolInvocationPolicyProperties', 'mapOf', 'mapOf')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('registerProperties',)",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "registerProperties",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('assumeTrue', 'isDockerAvailable', 'start')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "assumeTrue.isDockerAvailable.start.pullAndWarmup",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('queryForObject',)",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "queryForObject",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('filesIn', 'assertTrue', 'contains')",
|
||||
"methods": 4,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "filesIn.assertTrue.(contains)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('JobStatus', 'every', 'getJobStatus')",
|
||||
"methods": 4,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.5,
|
||||
"sore": "JobStatus.every.getJobStatus.get.uri.exchange.expectStatus.expectBody.(jsonPath.isEqualTo)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('every', 'getJobStatus', 'get')",
|
||||
"methods": 4,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.5,
|
||||
"sore": "every.getJobStatus.get.uri.exchange.expectStatus.(expectBody.jsonPath.isEqualTo)?",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('runBlocking', 'controller', 'every')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('builder', 'inputType', 'truncate')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('getMethod', 'invoke', 'return configureAndBuild(builder, config)')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "getMethod.invoke.return configureAndBuild(builder, config).configureAndBuild",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('leteByFilter(f', 'lterEquals(M')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "leteByFilter(f.lterEquals(M",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('`when`', 'healthCheckAsync', 'thenReturn')",
|
||||
"methods": 4,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('asJobId', 'asFilename', 'emptyGraphDocument')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('resolveUploadStorageUri',)",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "resolveUploadStorageUri",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('IngestionDocumentState', 'asDocumentId', 'asJobId')",
|
||||
"methods": 4,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('mapOf', 'mapOf', 'requireNotNull')",
|
||||
"methods": 4,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.5,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('createTempFile', 'apply', 'writeText')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('JobInstance', 'JobParametersBuilder', 'addString')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('every', 'fetchTracking', 'asJobId')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('every', 'existsByUsername', 'any')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "every.existsByUsername.any.assertThrows.registerUser.assertEquals",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('AgentExecutionContext',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "AgentExecutionContext",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('runTest', 'TestRequest', 'every')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('map',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "map",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('run', 'Supplier', 'action')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('ChatResponse', 'listOf', 'listOf')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('sortedBy', 'map', 'toDescriptor')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "sortedBy.map.toDescriptor",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('isNullOrBlank', 'error', 'error')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "isNullOrBlank.(error)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('runTest', 'RagInvocation', 'RagRequest')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('runTest', 'invoke', 'WikipediaLookupRequest')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('chat',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "chat",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('mockk', 'also', 'every')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('get', 'uri', 'exchange')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('run', 'collectionPointCount')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "run.collectionPointCount",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('newClient', 'callTool', 'CallToolRequest')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('createKnowledgeBase', 'copyTestDocument', 'copyTestDocument')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('MultipartBodyBuilder', 'part', 'readBytes')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('assertNoMainProjectDependencies', 'listOf', 'listOf')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('scopeFromProject', 'filter', 'contains')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('productionFiles', 'filter', 'contains')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "productionFiles.filter.(contains.(assertTrue)?)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('productionClasses', 'filter', 'hasAnnotationWithName')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('eFromProject()', 'ses()', 't { i')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('joinToString', 'warn', 'return ResponseEntity.status(HttpStatus.BAD_REQUEST)\\n .body(ErrorResponse(\"VALIDATION_ERROR\", \"Validation failed\", errors))')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "joinToString.warn.return ResponseEntity.status(HttpStatus.BAD_REQUEST)\n .body(ErrorResponse(\"VALIDATION_ERROR\", \"Validation failed\", errors)).status.body.ErrorResponse",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('post', 'uri', 'exchange')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "post.uri.exchange.expectStatus.(expectBody.jsonPath.isEqualTo)?",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('every', 'knowledgeBaseExists', 'every')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('KnowledgeBaseResponse', 'now', 'now')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "KnowledgeBaseResponse.(now)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('runTest', 'ChatResponse', 'listOf')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('runTest', 'post', 'uri')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "runTest.post.uri.bodyValue.(ChatRequest|SessionChatRequest).exchange.expectStatus",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('runTest', 'coEvery', 'chatWithMemory')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('JobStatus', 'now', 'minusMinutes')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('runTest', 'mockk', 'every')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "runTest.mockk.every.filename.assertFailsWith.ingestMultipart",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('every', 'getOrCreateAgentKnowledgeBase', 'slot')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('every', 'getJobStatus', 'JobStatus')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "every.getJobStatus.JobStatus.get.uri.exchange.expectStatus.expectBody.(jsonPath.isEqualTo)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('`when`', 'listModels', 'thenReturn')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('assertThrows', 'EmbabelAiHttpClientProperties', 'ofSeconds')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "assertThrows.EmbabelAiHttpClientProperties.ofSeconds",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('DoclingConfig', 'validateCriticalSettings')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "DoclingConfig.validateCriticalSettings",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('ilder()', 'ery(\"', 'pK(5')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('info', 'deleteByJobId')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "info.deleteByJobId",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('info', 'deleteByKnowledgeBaseId')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "info.deleteByKnowledgeBaseId",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('buildImageKey', 'return storeObject(key, bytes, contentTypeFor(format))', 'storeObject')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "buildImageKey.return storeObject(key, bytes, contentTypeFor(format)).storeObject.contentTypeFor",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('resolveLocation', 'builder', 'bucket')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('replace', 'ifBlank', 'lowercase')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "replace.ifBlank.lowercase.return StorageUri.of(\"images/${jobId.value}/$sanitizedId.$extension\").of",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('lowercase',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "lowercase",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('loadObject',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "loadObject",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('parse', 'KnowledgeBaseNode', 'save')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('parse', 'save', 'KnowledgeBaseNode')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('every', 'similaritySearch', 'any')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('DocumentGraphJob', 'asDocumentId', 'asJobId')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('asJobId', 'every', 'deleteByJobId')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "asJobId.every.(deleteByJobId.(assertDoesNotThrow)?)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('runBlocking', 'adminClient', 'post')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('execute',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "execute",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('every', 'process', 'any')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('policy', 'assertTrue', 'shouldRetry')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('state', 'every', 'recordFailure')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('update', 'trimIndent', 'now')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "update.trimIndent.now.insertRow",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('input', 'beforeProcess', 'verify')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('processedDocument', 'every', 'enforce')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('JobParametersBuilder', 'addString', 'toJobParameters')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('JobInstance', 'JobExecution', 'JobParametersBuilder')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('createJobExecution', 'every', 'findExecutionById')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('StagedUploadCleanupService', 'StorageProperties', 'toString')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('JwtService', 'JwtProperties', 'generateToken')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
}
|
||||
],
|
||||
"coverage": 12.0,
|
||||
"elapsed_seconds": 0.09,
|
||||
"merge_info": {
|
||||
"merges": {
|
||||
"iterations": 1,
|
||||
"merges": 0,
|
||||
"comparisons": 27495,
|
||||
"contexts_before": 1112,
|
||||
"contexts_after": 1112,
|
||||
"threshold": 0.2,
|
||||
"merge_log": []
|
||||
},
|
||||
"threshold": 0.2,
|
||||
"contexts_before": 1112,
|
||||
"contexts_after": 1112
|
||||
}
|
||||
}
|
||||
975
experiments/results/ragsak_reduce_k3_e03.json
Normal file
975
experiments/results/ragsak_reduce_k3_e03.json
Normal file
|
|
@ -0,0 +1,975 @@
|
|||
{
|
||||
"strategy": "Reduce k=3 \u03b5=0.3",
|
||||
"total_contexts": 1112,
|
||||
"meaningful_contexts": 117,
|
||||
"total_methods": 1597,
|
||||
"methods_in_good_groups": 187,
|
||||
"sore_successes": 46,
|
||||
"sore_failures": 15,
|
||||
"skip_reasons": {
|
||||
"large_alphabet": 6,
|
||||
"too_diverse": 50
|
||||
},
|
||||
"groups": [
|
||||
{
|
||||
"context": "('VectorChunk', 'mapOf', 'mapOf')",
|
||||
"methods": 13,
|
||||
"unique": 11,
|
||||
"unique_ratio": 0.846,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('ery {', 'stKnowledgeBases()', 'gRequest(m')",
|
||||
"methods": 12,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "ery {.stKnowledgeBases().gRequest(m.(ckKnowledgeBase(re.ertEquals(Kn.\"k|eckKnowledgeBase(r.(sertEquals(K.(\"|(sertEquals(t|sertNull(o)))",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('listOf', 'listOf', 'productionFiles')",
|
||||
"methods": 12,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.5,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('mockk',)",
|
||||
"methods": 11,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.091,
|
||||
"sore": "mockk",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('File', 'writeBytes', 'byteArrayOf')",
|
||||
"methods": 8,
|
||||
"unique": 7,
|
||||
"unique_ratio": 0.875,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('runTest', 'ChatResponse', 'emptyList')",
|
||||
"methods": 7,
|
||||
"unique": 7,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('filesIn', 'assertTrue', 'hasImport')",
|
||||
"methods": 7,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.286,
|
||||
"sore": "filesIn.assertTrue.(hasImport)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('JobStatus', 'every', 'getJobStatus')",
|
||||
"methods": 7,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.571,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('of',)",
|
||||
"methods": 7,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.143,
|
||||
"sore": "of",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('assertEquals', 'of', 'assertFailsWith')",
|
||||
"methods": 7,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.429,
|
||||
"sore": "assertEquals.(of.(assertFailsWith)?)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('runTest', 'mockk', 'mockk')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('listOf', 'listOf', 'forEach')",
|
||||
"methods": 6,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('session', 'use', 'run')",
|
||||
"methods": 6,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.5,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('from', 'now', 'update')",
|
||||
"methods": 6,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.5,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('HybridChunkingConfig', 'service', 'GraphDocument')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('parse', 'KnowledgeBase', 'asKnowledgeBaseId')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('very', 'istKnowledgeBases(', 'agRequest(')",
|
||||
"methods": 5,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.6,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('mockk', 'mockk', 'mockk')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('listOf', 'listOf', 'VectorChunk')",
|
||||
"methods": 5,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.8,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('await', 'pollInterval', 'ofSeconds')",
|
||||
"methods": 5,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.6,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('productionClasses', 'filter', 'contains')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('filesIn', 'filter', 'contains')",
|
||||
"methods": 5,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.4,
|
||||
"sore": "filesIn.filter.contains.assertTrue.(hasImport)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('runTest', 'mockFilePart', 'every')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('every', 'findPageRendering', 'of')",
|
||||
"methods": 5,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.8,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('coEvery', 'ingestMultipart', 'any')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('DoclingConfig', 'assertThatThrownBy', 'validateCriticalSettings')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "DoclingConfig.assertThatThrownBy.validateCriticalSettings.isInstanceOf.hasMessageContaining",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('trim', 'lowercase', 'warn')",
|
||||
"methods": 5,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.4,
|
||||
"sore": "trim.lowercase.(warn)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('every', 'existsById', 'asKnowledgeBaseId')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('upsertStaging', 'of', 'of')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('DocumentInput', 'asJobId', 'asDocumentId')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('defaultCapabilityId',)",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "defaultCapabilityId",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('clearAllMocks',)",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "clearAllMocks",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('Builder',)",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "Builder",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('Any',)",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "Any",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('get',)",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "get",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('mockkObject', 'slot', 'every')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('every', 'every', 'every')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('ToolInvocationPolicyProperties', 'mapOf', 'mapOf')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('registerProperties',)",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "registerProperties",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('assumeTrue', 'isDockerAvailable', 'start')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "assumeTrue.isDockerAvailable.start.pullAndWarmup",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('queryForObject',)",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "queryForObject",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('filesIn', 'assertTrue', 'contains')",
|
||||
"methods": 4,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "filesIn.assertTrue.(contains)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('every', 'getJobStatus', 'get')",
|
||||
"methods": 4,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.5,
|
||||
"sore": "every.getJobStatus.get.uri.exchange.expectStatus.(expectBody.jsonPath.isEqualTo)?",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('runBlocking', 'controller', 'every')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('builder', 'inputType', 'truncate')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('getMethod', 'invoke', 'return configureAndBuild(builder, config)')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "getMethod.invoke.return configureAndBuild(builder, config).configureAndBuild",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('leteByFilter(f', 'lterEquals(M')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "leteByFilter(f.lterEquals(M",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('`when`', 'healthCheckAsync', 'thenReturn')",
|
||||
"methods": 4,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('asJobId', 'asFilename', 'emptyGraphDocument')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('resolveUploadStorageUri',)",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "resolveUploadStorageUri",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('IngestionDocumentState', 'asDocumentId', 'asJobId')",
|
||||
"methods": 4,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('mapOf', 'mapOf', 'requireNotNull')",
|
||||
"methods": 4,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.5,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('createTempFile', 'apply', 'writeText')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('JobInstance', 'JobParametersBuilder', 'addString')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('every', 'fetchTracking', 'asJobId')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('every', 'existsByUsername', 'any')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "every.existsByUsername.any.assertThrows.registerUser.assertEquals",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('AgentExecutionContext',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "AgentExecutionContext",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('runTest', 'TestRequest', 'every')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('map',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "map",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('run', 'Supplier', 'action')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('ChatResponse', 'listOf', 'listOf')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('sortedBy', 'map', 'toDescriptor')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "sortedBy.map.toDescriptor",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('isNullOrBlank', 'error', 'error')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "isNullOrBlank.(error)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('runTest', 'RagInvocation', 'RagRequest')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('runTest', 'invoke', 'WikipediaLookupRequest')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('chat',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "chat",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('mockk', 'also', 'every')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('get', 'uri', 'exchange')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('run', 'collectionPointCount')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "run.collectionPointCount",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('newClient', 'callTool', 'CallToolRequest')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('createKnowledgeBase', 'copyTestDocument', 'copyTestDocument')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('MultipartBodyBuilder', 'part', 'readBytes')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('assertNoMainProjectDependencies', 'listOf', 'listOf')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('scopeFromProject', 'filter', 'contains')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('productionFiles', 'filter', 'contains')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "productionFiles.filter.(contains.(assertTrue)?)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('productionClasses', 'filter', 'hasAnnotationWithName')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('eFromProject()', 'ses()', 't { i')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('joinToString', 'warn', 'return ResponseEntity.status(HttpStatus.BAD_REQUEST)\\n .body(ErrorResponse(\"VALIDATION_ERROR\", \"Validation failed\", errors))')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "joinToString.warn.return ResponseEntity.status(HttpStatus.BAD_REQUEST)\n .body(ErrorResponse(\"VALIDATION_ERROR\", \"Validation failed\", errors)).status.body.ErrorResponse",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('post', 'uri', 'exchange')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "post.uri.exchange.expectStatus.(expectBody.jsonPath.isEqualTo)?",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('every', 'knowledgeBaseExists', 'every')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('KnowledgeBaseResponse', 'now', 'now')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "KnowledgeBaseResponse.(now)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('runTest', 'ChatResponse', 'listOf')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('runTest', 'post', 'uri')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "runTest.post.uri.bodyValue.(ChatRequest|SessionChatRequest).exchange.expectStatus",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('runTest', 'coEvery', 'chatWithMemory')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('runTest', 'mockk', 'every')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "runTest.mockk.every.filename.assertFailsWith.ingestMultipart",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('every', 'getOrCreateAgentKnowledgeBase', 'slot')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('every', 'getJobStatus', 'JobStatus')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "every.getJobStatus.JobStatus.get.uri.exchange.expectStatus.expectBody.(jsonPath.isEqualTo)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('`when`', 'listModels', 'thenReturn')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('assertThrows', 'EmbabelAiHttpClientProperties', 'ofSeconds')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "assertThrows.EmbabelAiHttpClientProperties.ofSeconds",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('DoclingConfig', 'validateCriticalSettings')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "DoclingConfig.validateCriticalSettings",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('ilder()', 'ery(\"', 'pK(5')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('info', 'deleteByJobId')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "info.deleteByJobId",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('info', 'deleteByKnowledgeBaseId')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "info.deleteByKnowledgeBaseId",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('buildImageKey', 'return storeObject(key, bytes, contentTypeFor(format))', 'storeObject')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "buildImageKey.return storeObject(key, bytes, contentTypeFor(format)).storeObject.contentTypeFor",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('resolveLocation', 'builder', 'bucket')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('replace', 'ifBlank', 'lowercase')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "replace.ifBlank.lowercase.return StorageUri.of(\"images/${jobId.value}/$sanitizedId.$extension\").of",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('lowercase',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "lowercase",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('loadObject',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "loadObject",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('parse', 'KnowledgeBaseNode', 'save')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('parse', 'save', 'KnowledgeBaseNode')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('every', 'similaritySearch', 'any')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('DocumentGraphJob', 'asDocumentId', 'asJobId')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('asJobId', 'every', 'deleteByJobId')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "asJobId.every.(deleteByJobId.(assertDoesNotThrow)?)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('runBlocking', 'adminClient', 'post')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('execute',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "execute",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('every', 'process', 'any')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('policy', 'assertTrue', 'shouldRetry')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('state', 'every', 'recordFailure')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('update', 'trimIndent', 'now')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "update.trimIndent.now.insertRow",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('input', 'beforeProcess', 'verify')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('processedDocument', 'every', 'enforce')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('JobParametersBuilder', 'addString', 'toJobParameters')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('JobInstance', 'JobExecution', 'JobParametersBuilder')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('createJobExecution', 'every', 'findExecutionById')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('StagedUploadCleanupService', 'StorageProperties', 'toString')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('JwtService', 'JwtProperties', 'generateToken')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('JobStatus', 'now', 'minusMinutes')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
}
|
||||
],
|
||||
"coverage": 11.7,
|
||||
"elapsed_seconds": 0.07,
|
||||
"merge_info": {
|
||||
"merges": {
|
||||
"iterations": 2,
|
||||
"merges": 1,
|
||||
"comparisons": 54756,
|
||||
"contexts_before": 1112,
|
||||
"contexts_after": 1112,
|
||||
"threshold": 0.3,
|
||||
"merge_log": [
|
||||
{
|
||||
"iteration": 1,
|
||||
"merged_into": "('JobStatus', 'every', 'getJobStatus')",
|
||||
"removed": "('JobStatus', 'now', 'minusMinutes')",
|
||||
"distance": 0.2714,
|
||||
"new_size": 7
|
||||
}
|
||||
]
|
||||
},
|
||||
"threshold": 0.3,
|
||||
"contexts_before": 1112,
|
||||
"contexts_after": 1112
|
||||
}
|
||||
}
|
||||
975
experiments/results/ragsak_reduce_k3_e04.json
Normal file
975
experiments/results/ragsak_reduce_k3_e04.json
Normal file
|
|
@ -0,0 +1,975 @@
|
|||
{
|
||||
"strategy": "Reduce k=3 \u03b5=0.4",
|
||||
"total_contexts": 1112,
|
||||
"meaningful_contexts": 117,
|
||||
"total_methods": 1597,
|
||||
"methods_in_good_groups": 187,
|
||||
"sore_successes": 46,
|
||||
"sore_failures": 15,
|
||||
"skip_reasons": {
|
||||
"large_alphabet": 6,
|
||||
"too_diverse": 50
|
||||
},
|
||||
"groups": [
|
||||
{
|
||||
"context": "('VectorChunk', 'mapOf', 'mapOf')",
|
||||
"methods": 13,
|
||||
"unique": 11,
|
||||
"unique_ratio": 0.846,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('ery {', 'stKnowledgeBases()', 'gRequest(m')",
|
||||
"methods": 12,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "ery {.stKnowledgeBases().gRequest(m.(ckKnowledgeBase(re.ertEquals(Kn.\"k|eckKnowledgeBase(r.(sertEquals(K.(\"|(sertEquals(t|sertNull(o)))",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('listOf', 'listOf', 'productionFiles')",
|
||||
"methods": 12,
|
||||
"unique": 6,
|
||||
"unique_ratio": 0.5,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('mockk',)",
|
||||
"methods": 11,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.091,
|
||||
"sore": "mockk",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('File', 'writeBytes', 'byteArrayOf')",
|
||||
"methods": 8,
|
||||
"unique": 7,
|
||||
"unique_ratio": 0.875,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('runTest', 'ChatResponse', 'emptyList')",
|
||||
"methods": 7,
|
||||
"unique": 7,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('filesIn', 'assertTrue', 'hasImport')",
|
||||
"methods": 7,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.286,
|
||||
"sore": "filesIn.assertTrue.(hasImport)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('JobStatus', 'every', 'getJobStatus')",
|
||||
"methods": 7,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.571,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('of',)",
|
||||
"methods": 7,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.143,
|
||||
"sore": "of",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('assertEquals', 'of', 'assertFailsWith')",
|
||||
"methods": 7,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.429,
|
||||
"sore": "assertEquals.(of.(assertFailsWith)?)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('runTest', 'mockk', 'mockk')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('listOf', 'listOf', 'forEach')",
|
||||
"methods": 6,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('session', 'use', 'run')",
|
||||
"methods": 6,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.5,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('from', 'now', 'update')",
|
||||
"methods": 6,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.5,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('HybridChunkingConfig', 'service', 'GraphDocument')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('parse', 'KnowledgeBase', 'asKnowledgeBaseId')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('very', 'istKnowledgeBases(', 'agRequest(')",
|
||||
"methods": 5,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.6,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('mockk', 'mockk', 'mockk')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('listOf', 'listOf', 'VectorChunk')",
|
||||
"methods": 5,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.8,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('await', 'pollInterval', 'ofSeconds')",
|
||||
"methods": 5,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.6,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('productionClasses', 'filter', 'contains')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('filesIn', 'filter', 'contains')",
|
||||
"methods": 5,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.4,
|
||||
"sore": "filesIn.filter.contains.assertTrue.(hasImport)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('runTest', 'mockFilePart', 'every')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('every', 'findPageRendering', 'of')",
|
||||
"methods": 5,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.8,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('coEvery', 'ingestMultipart', 'any')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('DoclingConfig', 'assertThatThrownBy', 'validateCriticalSettings')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "DoclingConfig.assertThatThrownBy.validateCriticalSettings.isInstanceOf.hasMessageContaining",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('trim', 'lowercase', 'warn')",
|
||||
"methods": 5,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.4,
|
||||
"sore": "trim.lowercase.(warn)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('every', 'existsById', 'asKnowledgeBaseId')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('upsertStaging', 'of', 'of')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('DocumentInput', 'asJobId', 'asDocumentId')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('defaultCapabilityId',)",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "defaultCapabilityId",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('clearAllMocks',)",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "clearAllMocks",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('Builder',)",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "Builder",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('Any',)",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "Any",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('get',)",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "get",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('mockkObject', 'slot', 'every')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('every', 'every', 'every')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('ToolInvocationPolicyProperties', 'mapOf', 'mapOf')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('registerProperties',)",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "registerProperties",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('assumeTrue', 'isDockerAvailable', 'start')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "assumeTrue.isDockerAvailable.start.pullAndWarmup",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('queryForObject',)",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "queryForObject",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('filesIn', 'assertTrue', 'contains')",
|
||||
"methods": 4,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "filesIn.assertTrue.(contains)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('every', 'getJobStatus', 'get')",
|
||||
"methods": 4,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.5,
|
||||
"sore": "every.getJobStatus.get.uri.exchange.expectStatus.(expectBody.jsonPath.isEqualTo)?",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('runBlocking', 'controller', 'every')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('builder', 'inputType', 'truncate')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('getMethod', 'invoke', 'return configureAndBuild(builder, config)')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "getMethod.invoke.return configureAndBuild(builder, config).configureAndBuild",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('leteByFilter(f', 'lterEquals(M')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "leteByFilter(f.lterEquals(M",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('`when`', 'healthCheckAsync', 'thenReturn')",
|
||||
"methods": 4,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('asJobId', 'asFilename', 'emptyGraphDocument')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('resolveUploadStorageUri',)",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "resolveUploadStorageUri",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('IngestionDocumentState', 'asDocumentId', 'asJobId')",
|
||||
"methods": 4,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('mapOf', 'mapOf', 'requireNotNull')",
|
||||
"methods": 4,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.5,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('createTempFile', 'apply', 'writeText')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('JobInstance', 'JobParametersBuilder', 'addString')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('every', 'fetchTracking', 'asJobId')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('every', 'existsByUsername', 'any')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "every.existsByUsername.any.assertThrows.registerUser.assertEquals",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('AgentExecutionContext',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "AgentExecutionContext",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('runTest', 'TestRequest', 'every')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('map',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "map",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('run', 'Supplier', 'action')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('ChatResponse', 'listOf', 'listOf')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('sortedBy', 'map', 'toDescriptor')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "sortedBy.map.toDescriptor",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('isNullOrBlank', 'error', 'error')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "isNullOrBlank.(error)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('runTest', 'RagInvocation', 'RagRequest')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('runTest', 'invoke', 'WikipediaLookupRequest')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('chat',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "chat",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('mockk', 'also', 'every')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('get', 'uri', 'exchange')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('run', 'collectionPointCount')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "run.collectionPointCount",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('newClient', 'callTool', 'CallToolRequest')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('createKnowledgeBase', 'copyTestDocument', 'copyTestDocument')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('MultipartBodyBuilder', 'part', 'readBytes')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('assertNoMainProjectDependencies', 'listOf', 'listOf')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('scopeFromProject', 'filter', 'contains')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('productionFiles', 'filter', 'contains')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "productionFiles.filter.(contains.(assertTrue)?)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('productionClasses', 'filter', 'hasAnnotationWithName')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('eFromProject()', 'ses()', 't { i')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('joinToString', 'warn', 'return ResponseEntity.status(HttpStatus.BAD_REQUEST)\\n .body(ErrorResponse(\"VALIDATION_ERROR\", \"Validation failed\", errors))')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "joinToString.warn.return ResponseEntity.status(HttpStatus.BAD_REQUEST)\n .body(ErrorResponse(\"VALIDATION_ERROR\", \"Validation failed\", errors)).status.body.ErrorResponse",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('post', 'uri', 'exchange')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "post.uri.exchange.expectStatus.(expectBody.jsonPath.isEqualTo)?",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('every', 'knowledgeBaseExists', 'every')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('KnowledgeBaseResponse', 'now', 'now')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "KnowledgeBaseResponse.(now)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('runTest', 'ChatResponse', 'listOf')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('runTest', 'post', 'uri')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "runTest.post.uri.bodyValue.(ChatRequest|SessionChatRequest).exchange.expectStatus",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('runTest', 'coEvery', 'chatWithMemory')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('runTest', 'mockk', 'every')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "runTest.mockk.every.filename.assertFailsWith.ingestMultipart",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('every', 'getOrCreateAgentKnowledgeBase', 'slot')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('every', 'getJobStatus', 'JobStatus')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "every.getJobStatus.JobStatus.get.uri.exchange.expectStatus.expectBody.(jsonPath.isEqualTo)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('`when`', 'listModels', 'thenReturn')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('assertThrows', 'EmbabelAiHttpClientProperties', 'ofSeconds')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "assertThrows.EmbabelAiHttpClientProperties.ofSeconds",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('DoclingConfig', 'validateCriticalSettings')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "DoclingConfig.validateCriticalSettings",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('ilder()', 'ery(\"', 'pK(5')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('info', 'deleteByJobId')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "info.deleteByJobId",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('info', 'deleteByKnowledgeBaseId')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "info.deleteByKnowledgeBaseId",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('buildImageKey', 'return storeObject(key, bytes, contentTypeFor(format))', 'storeObject')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "buildImageKey.return storeObject(key, bytes, contentTypeFor(format)).storeObject.contentTypeFor",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('resolveLocation', 'builder', 'bucket')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('replace', 'ifBlank', 'lowercase')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "replace.ifBlank.lowercase.return StorageUri.of(\"images/${jobId.value}/$sanitizedId.$extension\").of",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('lowercase',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "lowercase",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('loadObject',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "loadObject",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('parse', 'KnowledgeBaseNode', 'save')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('parse', 'save', 'KnowledgeBaseNode')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('every', 'similaritySearch', 'any')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('DocumentGraphJob', 'asDocumentId', 'asJobId')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('asJobId', 'every', 'deleteByJobId')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "asJobId.every.(deleteByJobId.(assertDoesNotThrow)?)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('runBlocking', 'adminClient', 'post')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('execute',)",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "execute",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('every', 'process', 'any')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('policy', 'assertTrue', 'shouldRetry')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('state', 'every', 'recordFailure')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('update', 'trimIndent', 'now')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "update.trimIndent.now.insertRow",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('input', 'beforeProcess', 'verify')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('processedDocument', 'every', 'enforce')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('JobParametersBuilder', 'addString', 'toJobParameters')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('JobInstance', 'JobExecution', 'JobParametersBuilder')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('createJobExecution', 'every', 'findExecutionById')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('StagedUploadCleanupService', 'StorageProperties', 'toString')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('JwtService', 'JwtProperties', 'generateToken')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('JobStatus', 'now', 'minusMinutes')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
}
|
||||
],
|
||||
"coverage": 11.7,
|
||||
"elapsed_seconds": 0.04,
|
||||
"merge_info": {
|
||||
"merges": {
|
||||
"iterations": 2,
|
||||
"merges": 1,
|
||||
"comparisons": 54756,
|
||||
"contexts_before": 1112,
|
||||
"contexts_after": 1112,
|
||||
"threshold": 0.4,
|
||||
"merge_log": [
|
||||
{
|
||||
"iteration": 1,
|
||||
"merged_into": "('JobStatus', 'every', 'getJobStatus')",
|
||||
"removed": "('JobStatus', 'now', 'minusMinutes')",
|
||||
"distance": 0.2714,
|
||||
"new_size": 7
|
||||
}
|
||||
]
|
||||
},
|
||||
"threshold": 0.4,
|
||||
"contexts_before": 1112,
|
||||
"contexts_after": 1112
|
||||
}
|
||||
}
|
||||
57
experiments/results/ragsak_return_type_heuristic.json
Normal file
57
experiments/results/ragsak_return_type_heuristic.json
Normal file
|
|
@ -0,0 +1,57 @@
|
|||
{
|
||||
"strategy": "Option H: Return type heuristic",
|
||||
"total_contexts": 60,
|
||||
"meaningful_contexts": 5,
|
||||
"total_methods": 1594,
|
||||
"methods_in_good_groups": 0,
|
||||
"sore_successes": 0,
|
||||
"sore_failures": 0,
|
||||
"skip_reasons": {
|
||||
"too_large": 1,
|
||||
"too_diverse": 4
|
||||
},
|
||||
"groups": [
|
||||
{
|
||||
"context": "('RETURN_VALUE',)",
|
||||
"methods": 1517,
|
||||
"unique": 1312,
|
||||
"unique_ratio": 0.865,
|
||||
"sore": "SKIP(too_large)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('SIDE_EFFECT',)",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('RETURN_false',)",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('RETURN_result',)",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('RETURN_normalized',)",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
}
|
||||
],
|
||||
"coverage": 0.0,
|
||||
"elapsed_seconds": 0.0
|
||||
}
|
||||
754
experiments/results/ragsak_summary.json
Normal file
754
experiments/results/ragsak_summary.json
Normal file
|
|
@ -0,0 +1,754 @@
|
|||
[
|
||||
{
|
||||
"strategy": "Baseline: Package grouping",
|
||||
"total_contexts": 137,
|
||||
"meaningful_contexts": 116,
|
||||
"total_methods": 1594,
|
||||
"methods_in_good_groups": 9,
|
||||
"sore_successes": 2,
|
||||
"sore_failures": 10,
|
||||
"skip_reasons": {
|
||||
"too_large": 5,
|
||||
"too_diverse": 89,
|
||||
"large_alphabet": 10
|
||||
},
|
||||
"coverage": 0.6,
|
||||
"elapsed_seconds": 0.07
|
||||
},
|
||||
{
|
||||
"strategy": "Option A: File path k=1",
|
||||
"total_contexts": 47,
|
||||
"meaningful_contexts": 43,
|
||||
"total_methods": 1594,
|
||||
"methods_in_good_groups": 17,
|
||||
"sore_successes": 2,
|
||||
"sore_failures": 1,
|
||||
"skip_reasons": {
|
||||
"too_large": 9,
|
||||
"too_diverse": 28,
|
||||
"large_alphabet": 3
|
||||
},
|
||||
"coverage": 1.1,
|
||||
"elapsed_seconds": 0.0
|
||||
},
|
||||
{
|
||||
"strategy": "Option A: File path k=2",
|
||||
"total_contexts": 59,
|
||||
"meaningful_contexts": 54,
|
||||
"total_methods": 1594,
|
||||
"methods_in_good_groups": 17,
|
||||
"sore_successes": 2,
|
||||
"sore_failures": 1,
|
||||
"skip_reasons": {
|
||||
"too_large": 8,
|
||||
"too_diverse": 39,
|
||||
"large_alphabet": 4
|
||||
},
|
||||
"coverage": 1.1,
|
||||
"elapsed_seconds": 0.01
|
||||
},
|
||||
{
|
||||
"strategy": "Option A: File path k=3",
|
||||
"total_contexts": 59,
|
||||
"meaningful_contexts": 54,
|
||||
"total_methods": 1594,
|
||||
"methods_in_good_groups": 17,
|
||||
"sore_successes": 2,
|
||||
"sore_failures": 1,
|
||||
"skip_reasons": {
|
||||
"too_large": 8,
|
||||
"too_diverse": 39,
|
||||
"large_alphabet": 4
|
||||
},
|
||||
"coverage": 1.1,
|
||||
"elapsed_seconds": 0.01
|
||||
},
|
||||
{
|
||||
"strategy": "Option B: First 1 symbols",
|
||||
"total_contexts": 550,
|
||||
"meaningful_contexts": 134,
|
||||
"total_methods": 1594,
|
||||
"methods_in_good_groups": 74,
|
||||
"sore_successes": 20,
|
||||
"sore_failures": 19,
|
||||
"skip_reasons": {
|
||||
"too_large": 2,
|
||||
"large_alphabet": 13,
|
||||
"too_diverse": 80
|
||||
},
|
||||
"coverage": 4.6,
|
||||
"elapsed_seconds": 0.08
|
||||
},
|
||||
{
|
||||
"strategy": "Option B: First 2 symbols",
|
||||
"total_contexts": 961,
|
||||
"meaningful_contexts": 141,
|
||||
"total_methods": 1594,
|
||||
"methods_in_good_groups": 157,
|
||||
"sore_successes": 39,
|
||||
"sore_failures": 23,
|
||||
"skip_reasons": {
|
||||
"large_alphabet": 7,
|
||||
"too_diverse": 72
|
||||
},
|
||||
"coverage": 9.8,
|
||||
"elapsed_seconds": 0.13
|
||||
},
|
||||
{
|
||||
"strategy": "Option B: First 3 symbols",
|
||||
"total_contexts": 1112,
|
||||
"meaningful_contexts": 117,
|
||||
"total_methods": 1594,
|
||||
"methods_in_good_groups": 191,
|
||||
"sore_successes": 47,
|
||||
"sore_failures": 14,
|
||||
"skip_reasons": {
|
||||
"large_alphabet": 6,
|
||||
"too_diverse": 50
|
||||
},
|
||||
"coverage": 12.0,
|
||||
"elapsed_seconds": 0.1
|
||||
},
|
||||
{
|
||||
"strategy": "Option C: Path k=1 + Symbol k=1",
|
||||
"total_contexts": 813,
|
||||
"meaningful_contexts": 151,
|
||||
"total_methods": 1594,
|
||||
"methods_in_good_groups": 101,
|
||||
"sore_successes": 24,
|
||||
"sore_failures": 19,
|
||||
"skip_reasons": {
|
||||
"too_diverse": 99,
|
||||
"large_alphabet": 9
|
||||
},
|
||||
"coverage": 6.3,
|
||||
"elapsed_seconds": 0.1
|
||||
},
|
||||
{
|
||||
"strategy": "Option C: Path k=1 + Symbol k=2",
|
||||
"total_contexts": 1073,
|
||||
"meaningful_contexts": 119,
|
||||
"total_methods": 1594,
|
||||
"methods_in_good_groups": 138,
|
||||
"sore_successes": 33,
|
||||
"sore_failures": 21,
|
||||
"skip_reasons": {
|
||||
"too_diverse": 61,
|
||||
"large_alphabet": 4
|
||||
},
|
||||
"coverage": 8.7,
|
||||
"elapsed_seconds": 0.07
|
||||
},
|
||||
{
|
||||
"strategy": "Option C: Path k=2 + Symbol k=1",
|
||||
"total_contexts": 832,
|
||||
"meaningful_contexts": 146,
|
||||
"total_methods": 1594,
|
||||
"methods_in_good_groups": 101,
|
||||
"sore_successes": 24,
|
||||
"sore_failures": 19,
|
||||
"skip_reasons": {
|
||||
"too_diverse": 94,
|
||||
"large_alphabet": 9
|
||||
},
|
||||
"coverage": 6.3,
|
||||
"elapsed_seconds": 0.08
|
||||
},
|
||||
{
|
||||
"strategy": "Option C: Path k=2 + Symbol k=2",
|
||||
"total_contexts": 1080,
|
||||
"meaningful_contexts": 117,
|
||||
"total_methods": 1594,
|
||||
"methods_in_good_groups": 138,
|
||||
"sore_successes": 33,
|
||||
"sore_failures": 21,
|
||||
"skip_reasons": {
|
||||
"too_diverse": 59,
|
||||
"large_alphabet": 4
|
||||
},
|
||||
"coverage": 8.7,
|
||||
"elapsed_seconds": 0.07
|
||||
},
|
||||
{
|
||||
"strategy": "Option H: Return type heuristic",
|
||||
"total_contexts": 60,
|
||||
"meaningful_contexts": 5,
|
||||
"total_methods": 1594,
|
||||
"methods_in_good_groups": 0,
|
||||
"sore_successes": 0,
|
||||
"sore_failures": 0,
|
||||
"skip_reasons": {
|
||||
"too_large": 1,
|
||||
"too_diverse": 4
|
||||
},
|
||||
"coverage": 0.0,
|
||||
"elapsed_seconds": 0.0
|
||||
},
|
||||
{
|
||||
"strategy": "Reduce k=1 \u03b5=0.05",
|
||||
"total_contexts": 550,
|
||||
"meaningful_contexts": 134,
|
||||
"total_methods": 1594,
|
||||
"methods_in_good_groups": 74,
|
||||
"sore_successes": 20,
|
||||
"sore_failures": 19,
|
||||
"skip_reasons": {
|
||||
"too_large": 2,
|
||||
"large_alphabet": 13,
|
||||
"too_diverse": 80
|
||||
},
|
||||
"coverage": 4.6,
|
||||
"elapsed_seconds": 0.09,
|
||||
"merge_info": {
|
||||
"merges": {
|
||||
"iterations": 1,
|
||||
"merges": 0,
|
||||
"comparisons": 23653,
|
||||
"contexts_before": 550,
|
||||
"contexts_after": 550,
|
||||
"threshold": 0.05,
|
||||
"merge_log": []
|
||||
},
|
||||
"threshold": 0.05,
|
||||
"contexts_before": 550,
|
||||
"contexts_after": 550
|
||||
}
|
||||
},
|
||||
{
|
||||
"strategy": "Reduce k=1 \u03b5=0.1",
|
||||
"total_contexts": 550,
|
||||
"meaningful_contexts": 134,
|
||||
"total_methods": 1594,
|
||||
"methods_in_good_groups": 74,
|
||||
"sore_successes": 20,
|
||||
"sore_failures": 19,
|
||||
"skip_reasons": {
|
||||
"too_large": 2,
|
||||
"large_alphabet": 13,
|
||||
"too_diverse": 80
|
||||
},
|
||||
"coverage": 4.6,
|
||||
"elapsed_seconds": 0.08,
|
||||
"merge_info": {
|
||||
"merges": {
|
||||
"iterations": 1,
|
||||
"merges": 0,
|
||||
"comparisons": 23653,
|
||||
"contexts_before": 550,
|
||||
"contexts_after": 550,
|
||||
"threshold": 0.1,
|
||||
"merge_log": []
|
||||
},
|
||||
"threshold": 0.1,
|
||||
"contexts_before": 550,
|
||||
"contexts_after": 550
|
||||
}
|
||||
},
|
||||
{
|
||||
"strategy": "Reduce k=1 \u03b5=0.15",
|
||||
"total_contexts": 550,
|
||||
"meaningful_contexts": 134,
|
||||
"total_methods": 1594,
|
||||
"methods_in_good_groups": 74,
|
||||
"sore_successes": 20,
|
||||
"sore_failures": 19,
|
||||
"skip_reasons": {
|
||||
"too_large": 2,
|
||||
"large_alphabet": 13,
|
||||
"too_diverse": 80
|
||||
},
|
||||
"coverage": 4.6,
|
||||
"elapsed_seconds": 0.05,
|
||||
"merge_info": {
|
||||
"merges": {
|
||||
"iterations": 1,
|
||||
"merges": 0,
|
||||
"comparisons": 23653,
|
||||
"contexts_before": 550,
|
||||
"contexts_after": 550,
|
||||
"threshold": 0.15,
|
||||
"merge_log": []
|
||||
},
|
||||
"threshold": 0.15,
|
||||
"contexts_before": 550,
|
||||
"contexts_after": 550
|
||||
}
|
||||
},
|
||||
{
|
||||
"strategy": "Reduce k=1 \u03b5=0.2",
|
||||
"total_contexts": 550,
|
||||
"meaningful_contexts": 134,
|
||||
"total_methods": 1594,
|
||||
"methods_in_good_groups": 74,
|
||||
"sore_successes": 20,
|
||||
"sore_failures": 19,
|
||||
"skip_reasons": {
|
||||
"too_large": 2,
|
||||
"large_alphabet": 13,
|
||||
"too_diverse": 80
|
||||
},
|
||||
"coverage": 4.6,
|
||||
"elapsed_seconds": 0.13,
|
||||
"merge_info": {
|
||||
"merges": {
|
||||
"iterations": 1,
|
||||
"merges": 0,
|
||||
"comparisons": 23653,
|
||||
"contexts_before": 550,
|
||||
"contexts_after": 550,
|
||||
"threshold": 0.2,
|
||||
"merge_log": []
|
||||
},
|
||||
"threshold": 0.2,
|
||||
"contexts_before": 550,
|
||||
"contexts_after": 550
|
||||
}
|
||||
},
|
||||
{
|
||||
"strategy": "Reduce k=1 \u03b5=0.3",
|
||||
"total_contexts": 550,
|
||||
"meaningful_contexts": 134,
|
||||
"total_methods": 1594,
|
||||
"methods_in_good_groups": 74,
|
||||
"sore_successes": 20,
|
||||
"sore_failures": 19,
|
||||
"skip_reasons": {
|
||||
"too_large": 2,
|
||||
"large_alphabet": 13,
|
||||
"too_diverse": 80
|
||||
},
|
||||
"coverage": 4.6,
|
||||
"elapsed_seconds": 0.05,
|
||||
"merge_info": {
|
||||
"merges": {
|
||||
"iterations": 1,
|
||||
"merges": 0,
|
||||
"comparisons": 23653,
|
||||
"contexts_before": 550,
|
||||
"contexts_after": 550,
|
||||
"threshold": 0.3,
|
||||
"merge_log": []
|
||||
},
|
||||
"threshold": 0.3,
|
||||
"contexts_before": 550,
|
||||
"contexts_after": 550
|
||||
}
|
||||
},
|
||||
{
|
||||
"strategy": "Reduce k=1 \u03b5=0.4",
|
||||
"total_contexts": 550,
|
||||
"meaningful_contexts": 134,
|
||||
"total_methods": 1594,
|
||||
"methods_in_good_groups": 74,
|
||||
"sore_successes": 20,
|
||||
"sore_failures": 19,
|
||||
"skip_reasons": {
|
||||
"too_large": 2,
|
||||
"large_alphabet": 13,
|
||||
"too_diverse": 80
|
||||
},
|
||||
"coverage": 4.6,
|
||||
"elapsed_seconds": 0.05,
|
||||
"merge_info": {
|
||||
"merges": {
|
||||
"iterations": 1,
|
||||
"merges": 0,
|
||||
"comparisons": 23653,
|
||||
"contexts_before": 550,
|
||||
"contexts_after": 550,
|
||||
"threshold": 0.4,
|
||||
"merge_log": []
|
||||
},
|
||||
"threshold": 0.4,
|
||||
"contexts_before": 550,
|
||||
"contexts_after": 550
|
||||
}
|
||||
},
|
||||
{
|
||||
"strategy": "Reduce k=2 \u03b5=0.05",
|
||||
"total_contexts": 961,
|
||||
"meaningful_contexts": 141,
|
||||
"total_methods": 1594,
|
||||
"methods_in_good_groups": 157,
|
||||
"sore_successes": 39,
|
||||
"sore_failures": 23,
|
||||
"skip_reasons": {
|
||||
"large_alphabet": 7,
|
||||
"too_diverse": 72
|
||||
},
|
||||
"coverage": 9.8,
|
||||
"elapsed_seconds": 0.06,
|
||||
"merge_info": {
|
||||
"merges": {
|
||||
"iterations": 1,
|
||||
"merges": 0,
|
||||
"comparisons": 32896,
|
||||
"contexts_before": 961,
|
||||
"contexts_after": 961,
|
||||
"threshold": 0.05,
|
||||
"merge_log": []
|
||||
},
|
||||
"threshold": 0.05,
|
||||
"contexts_before": 961,
|
||||
"contexts_after": 961
|
||||
}
|
||||
},
|
||||
{
|
||||
"strategy": "Reduce k=2 \u03b5=0.1",
|
||||
"total_contexts": 961,
|
||||
"meaningful_contexts": 141,
|
||||
"total_methods": 1594,
|
||||
"methods_in_good_groups": 157,
|
||||
"sore_successes": 39,
|
||||
"sore_failures": 23,
|
||||
"skip_reasons": {
|
||||
"large_alphabet": 7,
|
||||
"too_diverse": 72
|
||||
},
|
||||
"coverage": 9.8,
|
||||
"elapsed_seconds": 0.12,
|
||||
"merge_info": {
|
||||
"merges": {
|
||||
"iterations": 1,
|
||||
"merges": 0,
|
||||
"comparisons": 32896,
|
||||
"contexts_before": 961,
|
||||
"contexts_after": 961,
|
||||
"threshold": 0.1,
|
||||
"merge_log": []
|
||||
},
|
||||
"threshold": 0.1,
|
||||
"contexts_before": 961,
|
||||
"contexts_after": 961
|
||||
}
|
||||
},
|
||||
{
|
||||
"strategy": "Reduce k=2 \u03b5=0.15",
|
||||
"total_contexts": 961,
|
||||
"meaningful_contexts": 141,
|
||||
"total_methods": 1594,
|
||||
"methods_in_good_groups": 157,
|
||||
"sore_successes": 39,
|
||||
"sore_failures": 23,
|
||||
"skip_reasons": {
|
||||
"large_alphabet": 7,
|
||||
"too_diverse": 72
|
||||
},
|
||||
"coverage": 9.8,
|
||||
"elapsed_seconds": 0.15,
|
||||
"merge_info": {
|
||||
"merges": {
|
||||
"iterations": 1,
|
||||
"merges": 0,
|
||||
"comparisons": 32896,
|
||||
"contexts_before": 961,
|
||||
"contexts_after": 961,
|
||||
"threshold": 0.15,
|
||||
"merge_log": []
|
||||
},
|
||||
"threshold": 0.15,
|
||||
"contexts_before": 961,
|
||||
"contexts_after": 961
|
||||
}
|
||||
},
|
||||
{
|
||||
"strategy": "Reduce k=2 \u03b5=0.2",
|
||||
"total_contexts": 961,
|
||||
"meaningful_contexts": 141,
|
||||
"total_methods": 1594,
|
||||
"methods_in_good_groups": 157,
|
||||
"sore_successes": 39,
|
||||
"sore_failures": 23,
|
||||
"skip_reasons": {
|
||||
"large_alphabet": 7,
|
||||
"too_diverse": 72
|
||||
},
|
||||
"coverage": 9.8,
|
||||
"elapsed_seconds": 0.13,
|
||||
"merge_info": {
|
||||
"merges": {
|
||||
"iterations": 1,
|
||||
"merges": 0,
|
||||
"comparisons": 32896,
|
||||
"contexts_before": 961,
|
||||
"contexts_after": 961,
|
||||
"threshold": 0.2,
|
||||
"merge_log": []
|
||||
},
|
||||
"threshold": 0.2,
|
||||
"contexts_before": 961,
|
||||
"contexts_after": 961
|
||||
}
|
||||
},
|
||||
{
|
||||
"strategy": "Reduce k=2 \u03b5=0.3",
|
||||
"total_contexts": 961,
|
||||
"meaningful_contexts": 141,
|
||||
"total_methods": 1597,
|
||||
"methods_in_good_groups": 153,
|
||||
"sore_successes": 38,
|
||||
"sore_failures": 24,
|
||||
"skip_reasons": {
|
||||
"large_alphabet": 7,
|
||||
"too_diverse": 72
|
||||
},
|
||||
"coverage": 9.6,
|
||||
"elapsed_seconds": 0.1,
|
||||
"merge_info": {
|
||||
"merges": {
|
||||
"iterations": 2,
|
||||
"merges": 1,
|
||||
"comparisons": 65536,
|
||||
"contexts_before": 961,
|
||||
"contexts_after": 961,
|
||||
"threshold": 0.3,
|
||||
"merge_log": [
|
||||
{
|
||||
"iteration": 1,
|
||||
"merged_into": "('JobStatus', 'every')",
|
||||
"removed": "('JobStatus', 'now')",
|
||||
"distance": 0.2714,
|
||||
"new_size": 7
|
||||
}
|
||||
]
|
||||
},
|
||||
"threshold": 0.3,
|
||||
"contexts_before": 961,
|
||||
"contexts_after": 961
|
||||
}
|
||||
},
|
||||
{
|
||||
"strategy": "Reduce k=2 \u03b5=0.4",
|
||||
"total_contexts": 961,
|
||||
"meaningful_contexts": 141,
|
||||
"total_methods": 1604,
|
||||
"methods_in_good_groups": 153,
|
||||
"sore_successes": 38,
|
||||
"sore_failures": 24,
|
||||
"skip_reasons": {
|
||||
"large_alphabet": 7,
|
||||
"too_diverse": 72
|
||||
},
|
||||
"coverage": 9.5,
|
||||
"elapsed_seconds": 0.1,
|
||||
"merge_info": {
|
||||
"merges": {
|
||||
"iterations": 2,
|
||||
"merges": 2,
|
||||
"comparisons": 65281,
|
||||
"contexts_before": 961,
|
||||
"contexts_after": 961,
|
||||
"threshold": 0.4,
|
||||
"merge_log": [
|
||||
{
|
||||
"iteration": 1,
|
||||
"merged_into": "('JobStatus', 'every')",
|
||||
"removed": "('every', 'getJobStatus')",
|
||||
"distance": 0.3853,
|
||||
"new_size": 11
|
||||
},
|
||||
{
|
||||
"iteration": 1,
|
||||
"merged_into": "('JobStatus', 'every')",
|
||||
"removed": "('JobStatus', 'now')",
|
||||
"distance": 0.2714,
|
||||
"new_size": 14
|
||||
}
|
||||
]
|
||||
},
|
||||
"threshold": 0.4,
|
||||
"contexts_before": 961,
|
||||
"contexts_after": 961
|
||||
}
|
||||
},
|
||||
{
|
||||
"strategy": "Reduce k=3 \u03b5=0.05",
|
||||
"total_contexts": 1112,
|
||||
"meaningful_contexts": 117,
|
||||
"total_methods": 1594,
|
||||
"methods_in_good_groups": 191,
|
||||
"sore_successes": 47,
|
||||
"sore_failures": 14,
|
||||
"skip_reasons": {
|
||||
"large_alphabet": 6,
|
||||
"too_diverse": 50
|
||||
},
|
||||
"coverage": 12.0,
|
||||
"elapsed_seconds": 0.09,
|
||||
"merge_info": {
|
||||
"merges": {
|
||||
"iterations": 1,
|
||||
"merges": 0,
|
||||
"comparisons": 27495,
|
||||
"contexts_before": 1112,
|
||||
"contexts_after": 1112,
|
||||
"threshold": 0.05,
|
||||
"merge_log": []
|
||||
},
|
||||
"threshold": 0.05,
|
||||
"contexts_before": 1112,
|
||||
"contexts_after": 1112
|
||||
}
|
||||
},
|
||||
{
|
||||
"strategy": "Reduce k=3 \u03b5=0.1",
|
||||
"total_contexts": 1112,
|
||||
"meaningful_contexts": 117,
|
||||
"total_methods": 1594,
|
||||
"methods_in_good_groups": 191,
|
||||
"sore_successes": 47,
|
||||
"sore_failures": 14,
|
||||
"skip_reasons": {
|
||||
"large_alphabet": 6,
|
||||
"too_diverse": 50
|
||||
},
|
||||
"coverage": 12.0,
|
||||
"elapsed_seconds": 0.12,
|
||||
"merge_info": {
|
||||
"merges": {
|
||||
"iterations": 1,
|
||||
"merges": 0,
|
||||
"comparisons": 27495,
|
||||
"contexts_before": 1112,
|
||||
"contexts_after": 1112,
|
||||
"threshold": 0.1,
|
||||
"merge_log": []
|
||||
},
|
||||
"threshold": 0.1,
|
||||
"contexts_before": 1112,
|
||||
"contexts_after": 1112
|
||||
}
|
||||
},
|
||||
{
|
||||
"strategy": "Reduce k=3 \u03b5=0.15",
|
||||
"total_contexts": 1112,
|
||||
"meaningful_contexts": 117,
|
||||
"total_methods": 1594,
|
||||
"methods_in_good_groups": 191,
|
||||
"sore_successes": 47,
|
||||
"sore_failures": 14,
|
||||
"skip_reasons": {
|
||||
"large_alphabet": 6,
|
||||
"too_diverse": 50
|
||||
},
|
||||
"coverage": 12.0,
|
||||
"elapsed_seconds": 0.04,
|
||||
"merge_info": {
|
||||
"merges": {
|
||||
"iterations": 1,
|
||||
"merges": 0,
|
||||
"comparisons": 27495,
|
||||
"contexts_before": 1112,
|
||||
"contexts_after": 1112,
|
||||
"threshold": 0.15,
|
||||
"merge_log": []
|
||||
},
|
||||
"threshold": 0.15,
|
||||
"contexts_before": 1112,
|
||||
"contexts_after": 1112
|
||||
}
|
||||
},
|
||||
{
|
||||
"strategy": "Reduce k=3 \u03b5=0.2",
|
||||
"total_contexts": 1112,
|
||||
"meaningful_contexts": 117,
|
||||
"total_methods": 1594,
|
||||
"methods_in_good_groups": 191,
|
||||
"sore_successes": 47,
|
||||
"sore_failures": 14,
|
||||
"skip_reasons": {
|
||||
"large_alphabet": 6,
|
||||
"too_diverse": 50
|
||||
},
|
||||
"coverage": 12.0,
|
||||
"elapsed_seconds": 0.09,
|
||||
"merge_info": {
|
||||
"merges": {
|
||||
"iterations": 1,
|
||||
"merges": 0,
|
||||
"comparisons": 27495,
|
||||
"contexts_before": 1112,
|
||||
"contexts_after": 1112,
|
||||
"threshold": 0.2,
|
||||
"merge_log": []
|
||||
},
|
||||
"threshold": 0.2,
|
||||
"contexts_before": 1112,
|
||||
"contexts_after": 1112
|
||||
}
|
||||
},
|
||||
{
|
||||
"strategy": "Reduce k=3 \u03b5=0.3",
|
||||
"total_contexts": 1112,
|
||||
"meaningful_contexts": 117,
|
||||
"total_methods": 1597,
|
||||
"methods_in_good_groups": 187,
|
||||
"sore_successes": 46,
|
||||
"sore_failures": 15,
|
||||
"skip_reasons": {
|
||||
"large_alphabet": 6,
|
||||
"too_diverse": 50
|
||||
},
|
||||
"coverage": 11.7,
|
||||
"elapsed_seconds": 0.07,
|
||||
"merge_info": {
|
||||
"merges": {
|
||||
"iterations": 2,
|
||||
"merges": 1,
|
||||
"comparisons": 54756,
|
||||
"contexts_before": 1112,
|
||||
"contexts_after": 1112,
|
||||
"threshold": 0.3,
|
||||
"merge_log": [
|
||||
{
|
||||
"iteration": 1,
|
||||
"merged_into": "('JobStatus', 'every', 'getJobStatus')",
|
||||
"removed": "('JobStatus', 'now', 'minusMinutes')",
|
||||
"distance": 0.2714,
|
||||
"new_size": 7
|
||||
}
|
||||
]
|
||||
},
|
||||
"threshold": 0.3,
|
||||
"contexts_before": 1112,
|
||||
"contexts_after": 1112
|
||||
}
|
||||
},
|
||||
{
|
||||
"strategy": "Reduce k=3 \u03b5=0.4",
|
||||
"total_contexts": 1112,
|
||||
"meaningful_contexts": 117,
|
||||
"total_methods": 1597,
|
||||
"methods_in_good_groups": 187,
|
||||
"sore_successes": 46,
|
||||
"sore_failures": 15,
|
||||
"skip_reasons": {
|
||||
"large_alphabet": 6,
|
||||
"too_diverse": 50
|
||||
},
|
||||
"coverage": 11.7,
|
||||
"elapsed_seconds": 0.04,
|
||||
"merge_info": {
|
||||
"merges": {
|
||||
"iterations": 2,
|
||||
"merges": 1,
|
||||
"comparisons": 54756,
|
||||
"contexts_before": 1112,
|
||||
"contexts_after": 1112,
|
||||
"threshold": 0.4,
|
||||
"merge_log": [
|
||||
{
|
||||
"iteration": 1,
|
||||
"merged_into": "('JobStatus', 'every', 'getJobStatus')",
|
||||
"removed": "('JobStatus', 'now', 'minusMinutes')",
|
||||
"distance": 0.2714,
|
||||
"new_size": 7
|
||||
}
|
||||
]
|
||||
},
|
||||
"threshold": 0.4,
|
||||
"contexts_before": 1112,
|
||||
"contexts_after": 1112
|
||||
}
|
||||
}
|
||||
]
|
||||
1225
experiments/results/ragsak_two_d_p1_s1.json
Normal file
1225
experiments/results/ragsak_two_d_p1_s1.json
Normal file
File diff suppressed because it is too large
Load diff
969
experiments/results/ragsak_two_d_p1_s2.json
Normal file
969
experiments/results/ragsak_two_d_p1_s2.json
Normal file
|
|
@ -0,0 +1,969 @@
|
|||
{
|
||||
"strategy": "Option C: Path k=1 + Symbol k=2",
|
||||
"total_contexts": 1073,
|
||||
"meaningful_contexts": 119,
|
||||
"total_methods": 1594,
|
||||
"methods_in_good_groups": 138,
|
||||
"sore_successes": 33,
|
||||
"sore_failures": 21,
|
||||
"skip_reasons": {
|
||||
"too_diverse": 61,
|
||||
"large_alphabet": 4
|
||||
},
|
||||
"groups": [
|
||||
{
|
||||
"context": "('architecture', 'listOf', 'listOf')",
|
||||
"methods": 15,
|
||||
"unique": 8,
|
||||
"unique_ratio": 0.533,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('embabel', 'ery {', 'stKnowledgeBases()')",
|
||||
"methods": 13,
|
||||
"unique": 5,
|
||||
"unique_ratio": 0.385,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('architecture', 'productionClasses', 'filter')",
|
||||
"methods": 13,
|
||||
"unique": 13,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('config', 'mockk')",
|
||||
"methods": 11,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.091,
|
||||
"sore": "mockk",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('architecture', 'filesIn', 'assertTrue')",
|
||||
"methods": 11,
|
||||
"unique": 5,
|
||||
"unique_ratio": 0.455,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('reader', 'File', 'writeBytes')",
|
||||
"methods": 8,
|
||||
"unique": 7,
|
||||
"unique_ratio": 0.875,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('service', 'JwtService', 'JwtProperties')",
|
||||
"methods": 8,
|
||||
"unique": 8,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('ids', 'of')",
|
||||
"methods": 7,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.143,
|
||||
"sore": "of",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('ids', 'assertEquals', 'of')",
|
||||
"methods": 7,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.429,
|
||||
"sore": "assertEquals.(of.(assertFailsWith)?)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('job', 'from', 'now')",
|
||||
"methods": 7,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.571,
|
||||
"sore": "((from.now|(trimIndent|debug)).((update)+)?)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('simple', 'runTest', 'mockk')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('embabel', 'very', 'istKnowledgeBases(')",
|
||||
"methods": 6,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('web', 'runBlocking', 'controller')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('config', 'getMethod', 'invoke')",
|
||||
"methods": 6,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('storage', 'parseStorageUri', 'return false')",
|
||||
"methods": 6,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "parseStorageUri.return false.((return try {\n s3Client.headObject(\n HeadObjectRequest.builder()\n .bucket(location.bucket)\n .key(location.",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('repository', 'listOf', 'listOf')",
|
||||
"methods": 6,
|
||||
"unique": 5,
|
||||
"unique_ratio": 0.833,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('chunk', 'HybridChunkingConfig', 'service')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('service', 'every', 'existsByUsername')",
|
||||
"methods": 6,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.5,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('system', 'createKnowledgeBase', 'copyTestDocument')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('system', 'await', 'pollInterval')",
|
||||
"methods": 5,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.6,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('architecture', 'filesIn', 'filter')",
|
||||
"methods": 5,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.4,
|
||||
"sore": "filesIn.filter.contains.assertTrue.(hasImport)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('controller', 'runTest', 'ChatResponse')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('librechat', 'runTest', 'mockFilePart')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('librechat', 'VectorChunk', 'mapOf')",
|
||||
"methods": 5,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.6,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('librechat', 'every', 'findPageRendering')",
|
||||
"methods": 5,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.8,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('librechat', 'coEvery', 'ingestMultipart')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('config', 'DoclingConfig', 'assertThatThrownBy')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "DoclingConfig.assertThatThrownBy.validateCriticalSettings.isInstanceOf.hasMessageContaining",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('docling', 'trim', 'lowercase')",
|
||||
"methods": 5,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.4,
|
||||
"sore": "trim.lowercase.(warn)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('job', 'upsertStaging', 'of')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('job', 'query', 'trimIndent')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('job', 'update', 'trimIndent')",
|
||||
"methods": 5,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.4,
|
||||
"sore": "update.trimIndent.(now.insertRow)?",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('model', 'mapOf', 'mapOf')",
|
||||
"methods": 5,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.6,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('testsupport', 'Builder')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "Builder",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('testsupport', 'Any')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "Any",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('testsupport', 'get')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "get",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('embabel', 'mockkObject', 'slot')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('embabel', 'ToolInvocationPolicyProperties', 'mapOf')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('steps', 'requireNotNull', 'requireNotNull')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('config', 'registerProperties')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "registerProperties",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('config', 'assumeTrue', 'isDockerAvailable')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "assumeTrue.isDockerAvailable.start.pullAndWarmup",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('system', 'session', 'use')",
|
||||
"methods": 4,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.5,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('architecture', 'eFromProject()', 'ses()')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('controller', 'mockk', 'mockk')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('controller', 'JobStatus', 'every')",
|
||||
"methods": 4,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.5,
|
||||
"sore": "JobStatus.every.getJobStatus.get.uri.exchange.expectStatus.expectBody.(jsonPath.isEqualTo)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('controller', 'runTest', 'coEvery')",
|
||||
"methods": 4,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('librechat', 'every', 'getOrCreateAgentKnowledgeBase')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('librechat', 'every', 'getJobStatus')",
|
||||
"methods": 4,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('embedding', 'builder', 'inputType')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('health', '`when`', 'listModels')",
|
||||
"methods": 4,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('repository', 'ilder()', 'ery(\"')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('repository', 'leteByFilter(f', 'lterEquals(M')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "leteByFilter(f.lterEquals(M",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('graph', 'parse', 'KnowledgeBaseNode')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('health', '`when`', 'healthCheckAsync')",
|
||||
"methods": 4,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('graph', 'asJobId', 'asFilename')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('chat', 'runTest', 'ChatResponse')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('config', 'resolveUploadStorageUri')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "resolveUploadStorageUri",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('job', 'JobParametersBuilder', 'addString')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('listener', 'state', 'every')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('job', 'createTempFile', 'apply')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('job', 'JobInstance', 'JobParametersBuilder')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('job', 'every', 'fetchTracking')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('knowledgebase', 'parse', 'KnowledgeBase')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('capability', 'AgentExecutionContext')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "AgentExecutionContext",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('support', 'runTest', 'TestRequest')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('embabel', 'listOf', 'listOf')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('embabel', 'VectorChunk', 'mapOf')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('support', 'VectorChunk', 'mapOf')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('support', 'every', 'every')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('wikipedia', 'every', 'every')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('wikipedia', 'runTest', 'invoke')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('steps', 'chat')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "chat",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('config', 'mockk', 'also')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('config', 'run', 'collectionPointCount')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "run.collectionPointCount",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('system', 'newClient', 'callTool')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('system', 'MultipartBodyBuilder', 'part')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('architecture', 'assertNoMainProjectDependencies', 'listOf')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('kotlin', 'builder', 'build')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('architecture', 'scopeFromProject', 'filter')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('architecture', 'productionFiles', 'filter')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "productionFiles.filter.(contains.(assertTrue)?)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('architecture', 'productionClasses', 'withAnnotationOf')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('controller', 'every', 'getJobStatus')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "every.getJobStatus.get.uri.exchange.expectStatus",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('controller', 'joinToString', 'warn')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "joinToString.warn.return ResponseEntity.status(HttpStatus.BAD_REQUEST)\n .body(ErrorResponse(\"VALIDATION_ERROR\", \"Validation failed\", errors)).status.body.ErrorResponse",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('controller', 'listOf', 'listOf')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('controller', 'post', 'uri')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "post.uri.exchange.expectStatus.(expectBody.jsonPath.isEqualTo)?",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('controller', 'every', 'knowledgeBaseExists')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('controller', 'runTest', 'post')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "runTest.post.uri.bodyValue.(ChatRequest|SessionChatRequest).exchange.expectStatus",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('controller', 'JobStatus', 'now')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('librechat', 'runTest', 'mockk')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "runTest.mockk.every.filename.assertFailsWith.ingestMultipart",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('config', 'assertThrows', 'EmbabelAiHttpClientProperties')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "assertThrows.EmbabelAiHttpClientProperties.ofSeconds",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('config', 'ChatMemoryConfig', 'chatMemory')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('config', 'DoclingConfig', 'validateCriticalSettings')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "DoclingConfig.validateCriticalSettings",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('health', '`when`', 'health')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('storage', 'buildImageKey', 'return storeObject(key, bytes, contentTypeFor(format))')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "buildImageKey.return storeObject(key, bytes, contentTypeFor(format)).storeObject.contentTypeFor",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('storage', 'parseStorageUri', 'return null')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('storage', 'resolveLocation', 'builder')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('storage', 'replace', 'ifBlank')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "replace.ifBlank.lowercase.return StorageUri.of(\"images/${jobId.value}/$sanitizedId.$extension\").of",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('storage', 'lowercase')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "lowercase",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('storage', 'isBlank', 'return null')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('graph', 'runBlocking', 'createTestImage')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('graph', 'parse', 'save')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('repository', 'every', 'similaritySearch')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('adapter', 'DocumentJobNode', 'now')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('graph', 'DocumentGraphJob', 'asDocumentId')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('graph', 'asJobId', 'every')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "asJobId.every.(deleteByJobId.(assertDoesNotThrow)?)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('graph', 'emptyGraphDocument', 'every')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('system', 'runBlocking', 'adminClient')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('job', 'execute')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "execute",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('job', 'every', 'process')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('batch', 'policy', 'assertTrue')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('listener', 'createJobExecution', 'createStepExecution')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('listener', 'input', 'beforeProcess')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('model', 'DocumentInput', 'asJobId')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('writer', 'processedDocument', 'every')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('writer', 'runTest', 'GraphDocument')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('job', 'every', 'objectExists')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('job', 'JobInstance', 'JobExecution')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('job', 'createJobExecution', 'every')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('job', 'StagedUploadCleanupService', 'StorageProperties')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('knowledgebase', 'every', 'existsById')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
}
|
||||
],
|
||||
"coverage": 8.7,
|
||||
"elapsed_seconds": 0.07
|
||||
}
|
||||
1185
experiments/results/ragsak_two_d_p2_s1.json
Normal file
1185
experiments/results/ragsak_two_d_p2_s1.json
Normal file
File diff suppressed because it is too large
Load diff
953
experiments/results/ragsak_two_d_p2_s2.json
Normal file
953
experiments/results/ragsak_two_d_p2_s2.json
Normal file
|
|
@ -0,0 +1,953 @@
|
|||
{
|
||||
"strategy": "Option C: Path k=2 + Symbol k=2",
|
||||
"total_contexts": 1080,
|
||||
"meaningful_contexts": 117,
|
||||
"total_methods": 1594,
|
||||
"methods_in_good_groups": 138,
|
||||
"sore_successes": 33,
|
||||
"sore_failures": 21,
|
||||
"skip_reasons": {
|
||||
"too_diverse": 59,
|
||||
"large_alphabet": 4
|
||||
},
|
||||
"groups": [
|
||||
{
|
||||
"context": "('springrag', 'architecture', 'listOf', 'listOf')",
|
||||
"methods": 15,
|
||||
"unique": 8,
|
||||
"unique_ratio": 0.533,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('rag', 'embabel', 'ery {', 'stKnowledgeBases()')",
|
||||
"methods": 13,
|
||||
"unique": 5,
|
||||
"unique_ratio": 0.385,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'architecture', 'productionClasses', 'filter')",
|
||||
"methods": 13,
|
||||
"unique": 13,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'config', 'mockk')",
|
||||
"methods": 11,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.091,
|
||||
"sore": "mockk",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'architecture', 'filesIn', 'assertTrue')",
|
||||
"methods": 11,
|
||||
"unique": 5,
|
||||
"unique_ratio": 0.455,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('batch', 'reader', 'File', 'writeBytes')",
|
||||
"methods": 8,
|
||||
"unique": 7,
|
||||
"unique_ratio": 0.875,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('security', 'service', 'JwtService', 'JwtProperties')",
|
||||
"methods": 8,
|
||||
"unique": 8,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('common', 'ids', 'of')",
|
||||
"methods": 7,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.143,
|
||||
"sore": "of",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('common', 'ids', 'assertEquals', 'of')",
|
||||
"methods": 7,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.429,
|
||||
"sore": "assertEquals.(of.(assertFailsWith)?)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('service', 'job', 'from', 'now')",
|
||||
"methods": 7,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.571,
|
||||
"sore": "((from.now|(trimIndent|debug)).((update)+)?)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('rag', 'simple', 'runTest', 'mockk')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('rag', 'embabel', 'very', 'istKnowledgeBases(')",
|
||||
"methods": 6,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('controller', 'web', 'runBlocking', 'controller')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'config', 'getMethod', 'invoke')",
|
||||
"methods": 6,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('service', 'storage', 'parseStorageUri', 'return false')",
|
||||
"methods": 6,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "parseStorageUri.return false.((return try {\n s3Client.headObject(\n HeadObjectRequest.builder()\n .bucket(location.bucket)\n .key(location.",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'repository', 'listOf', 'listOf')",
|
||||
"methods": 6,
|
||||
"unique": 5,
|
||||
"unique_ratio": 0.833,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('service', 'chunk', 'HybridChunkingConfig', 'service')",
|
||||
"methods": 6,
|
||||
"unique": 6,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('security', 'service', 'every', 'existsByUsername')",
|
||||
"methods": 6,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.5,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'system', 'createKnowledgeBase', 'copyTestDocument')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'system', 'await', 'pollInterval')",
|
||||
"methods": 5,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.6,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'architecture', 'filesIn', 'filter')",
|
||||
"methods": 5,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.4,
|
||||
"sore": "filesIn.filter.contains.assertTrue.(hasImport)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'controller', 'runTest', 'ChatResponse')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('controller', 'librechat', 'runTest', 'mockFilePart')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('controller', 'librechat', 'VectorChunk', 'mapOf')",
|
||||
"methods": 5,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.6,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('controller', 'librechat', 'every', 'findPageRendering')",
|
||||
"methods": 5,
|
||||
"unique": 4,
|
||||
"unique_ratio": 0.8,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('controller', 'librechat', 'coEvery', 'ingestMultipart')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'config', 'DoclingConfig', 'assertThatThrownBy')",
|
||||
"methods": 5,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.2,
|
||||
"sore": "DoclingConfig.assertThatThrownBy.validateCriticalSettings.isInstanceOf.hasMessageContaining",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('service', 'docling', 'trim', 'lowercase')",
|
||||
"methods": 5,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.4,
|
||||
"sore": "trim.lowercase.(warn)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('service', 'job', 'upsertStaging', 'of')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('service', 'job', 'query', 'trimIndent')",
|
||||
"methods": 5,
|
||||
"unique": 5,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('service', 'job', 'update', 'trimIndent')",
|
||||
"methods": 5,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.4,
|
||||
"sore": "update.trimIndent.(now.insertRow)?",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('batch', 'model', 'mapOf', 'mapOf')",
|
||||
"methods": 5,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.6,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'testsupport', 'Builder')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "Builder",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'testsupport', 'Any')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "Any",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'testsupport', 'get')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "get",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('tooling', 'embabel', 'ToolInvocationPolicyProperties', 'mapOf')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('cucumber', 'steps', 'requireNotNull', 'requireNotNull')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'config', 'registerProperties')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "registerProperties",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'config', 'assumeTrue', 'isDockerAvailable')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "assumeTrue.isDockerAvailable.start.pullAndWarmup",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'system', 'session', 'use')",
|
||||
"methods": 4,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.5,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'architecture', 'eFromProject()', 'ses()')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'controller', 'mockk', 'mockk')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'controller', 'JobStatus', 'every')",
|
||||
"methods": 4,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.5,
|
||||
"sore": "JobStatus.every.getJobStatus.get.uri.exchange.expectStatus.expectBody.(jsonPath.isEqualTo)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'controller', 'runTest', 'coEvery')",
|
||||
"methods": 4,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('controller', 'librechat', 'every', 'getOrCreateAgentKnowledgeBase')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('controller', 'librechat', 'every', 'getJobStatus')",
|
||||
"methods": 4,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('service', 'embedding', 'builder', 'inputType')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'health', '`when`', 'listModels')",
|
||||
"methods": 4,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'repository', 'ilder()', 'ery(\"')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'repository', 'leteByFilter(f', 'lterEquals(M')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "leteByFilter(f.lterEquals(M",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('repository', 'graph', 'parse', 'KnowledgeBaseNode')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'health', '`when`', 'healthCheckAsync')",
|
||||
"methods": 4,
|
||||
"unique": 3,
|
||||
"unique_ratio": 0.75,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('service', 'graph', 'asJobId', 'asFilename')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('service', 'chat', 'runTest', 'ChatResponse')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'config', 'resolveUploadStorageUri')",
|
||||
"methods": 4,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.25,
|
||||
"sore": "resolveUploadStorageUri",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('service', 'job', 'JobParametersBuilder', 'addString')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('batch', 'listener', 'state', 'every')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('service', 'job', 'createTempFile', 'apply')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('service', 'job', 'JobInstance', 'JobParametersBuilder')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('service', 'job', 'every', 'fetchTracking')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('service', 'knowledgebase', 'parse', 'KnowledgeBase')",
|
||||
"methods": 4,
|
||||
"unique": 4,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('agent', 'capability', 'AgentExecutionContext')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "AgentExecutionContext",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('capability', 'support', 'runTest', 'TestRequest')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('rag', 'embabel', 'VectorChunk', 'mapOf')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('rag', 'support', 'VectorChunk', 'mapOf')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('rag', 'support', 'every', 'every')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('agent', 'wikipedia', 'every', 'every')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('agent', 'wikipedia', 'runTest', 'invoke')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('cucumber', 'steps', 'chat')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "chat",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'config', 'mockk', 'also')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'config', 'run', 'collectionPointCount')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "run.collectionPointCount",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'system', 'newClient', 'callTool')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'system', 'MultipartBodyBuilder', 'part')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "SKIP(large_alphabet)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'architecture', 'assertNoMainProjectDependencies', 'listOf')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('test', 'kotlin', 'builder', 'build')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'architecture', 'scopeFromProject', 'filter')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'architecture', 'productionFiles', 'filter')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "productionFiles.filter.(contains.(assertTrue)?)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'architecture', 'productionClasses', 'withAnnotationOf')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'controller', 'every', 'getJobStatus')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "every.getJobStatus.get.uri.exchange.expectStatus",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'controller', 'joinToString', 'warn')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "joinToString.warn.return ResponseEntity.status(HttpStatus.BAD_REQUEST)\n .body(ErrorResponse(\"VALIDATION_ERROR\", \"Validation failed\", errors)).status.body.ErrorResponse",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'controller', 'listOf', 'listOf')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'controller', 'post', 'uri')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "post.uri.exchange.expectStatus.(expectBody.jsonPath.isEqualTo)?",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'controller', 'every', 'knowledgeBaseExists')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'controller', 'runTest', 'post')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "runTest.post.uri.bodyValue.(ChatRequest|SessionChatRequest).exchange.expectStatus",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'controller', 'JobStatus', 'now')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('controller', 'librechat', 'runTest', 'mockk')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "runTest.mockk.every.filename.assertFailsWith.ingestMultipart",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'config', 'assertThrows', 'EmbabelAiHttpClientProperties')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "assertThrows.EmbabelAiHttpClientProperties.ofSeconds",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'config', 'ChatMemoryConfig', 'chatMemory')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'config', 'DoclingConfig', 'validateCriticalSettings')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "DoclingConfig.validateCriticalSettings",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'health', '`when`', 'health')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('service', 'storage', 'buildImageKey', 'return storeObject(key, bytes, contentTypeFor(format))')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "buildImageKey.return storeObject(key, bytes, contentTypeFor(format)).storeObject.contentTypeFor",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('service', 'storage', 'parseStorageUri', 'return null')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('service', 'storage', 'resolveLocation', 'builder')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('service', 'storage', 'replace', 'ifBlank')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "replace.ifBlank.lowercase.return StorageUri.of(\"images/${jobId.value}/$sanitizedId.$extension\").of",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('service', 'storage', 'lowercase')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "lowercase",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('service', 'storage', 'isBlank', 'return null')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('repository', 'graph', 'runBlocking', 'createTestImage')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('repository', 'graph', 'parse', 'save')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'repository', 'every', 'similaritySearch')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('port', 'adapter', 'DocumentJobNode', 'now')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('service', 'graph', 'DocumentGraphJob', 'asDocumentId')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('service', 'graph', 'asJobId', 'every')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "asJobId.every.(deleteByJobId.(assertDoesNotThrow)?)+",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('service', 'graph', 'emptyGraphDocument', 'every')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'system', 'runBlocking', 'adminClient')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('service', 'job', 'execute')",
|
||||
"methods": 3,
|
||||
"unique": 1,
|
||||
"unique_ratio": 0.333,
|
||||
"sore": "execute",
|
||||
"sore_success": true
|
||||
},
|
||||
{
|
||||
"context": "('service', 'job', 'every', 'process')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('springrag', 'batch', 'policy', 'assertTrue')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('batch', 'listener', 'createJobExecution', 'createStepExecution')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('batch', 'listener', 'input', 'beforeProcess')",
|
||||
"methods": 3,
|
||||
"unique": 2,
|
||||
"unique_ratio": 0.667,
|
||||
"sore": "\u2205",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('batch', 'model', 'DocumentInput', 'asJobId')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('batch', 'writer', 'processedDocument', 'every')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('batch', 'writer', 'runTest', 'GraphDocument')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('service', 'job', 'every', 'objectExists')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('service', 'job', 'JobInstance', 'JobExecution')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('service', 'job', 'createJobExecution', 'every')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('service', 'job', 'StagedUploadCleanupService', 'StorageProperties')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
},
|
||||
{
|
||||
"context": "('service', 'knowledgebase', 'every', 'existsById')",
|
||||
"methods": 3,
|
||||
"unique": 3,
|
||||
"unique_ratio": 1.0,
|
||||
"sore": "SKIP(too_diverse)",
|
||||
"sore_success": false
|
||||
}
|
||||
],
|
||||
"coverage": 8.7,
|
||||
"elapsed_seconds": 0.07
|
||||
}
|
||||
264
tests/test_reduce.py
Normal file
264
tests/test_reduce.py
Normal file
|
|
@ -0,0 +1,264 @@
|
|||
"""Tests for bex/reduce.py — Algorithm 4 (TODS 2010)."""
|
||||
|
||||
import pytest
|
||||
from bex.reduce import (
|
||||
build_soa_with_support, soa_distance, adjunct_support,
|
||||
reduce_contexts, minimize_contexts, reduce_and_infer,
|
||||
)
|
||||
from bex.twotinf import build_soa
|
||||
from bex.rwr0 import rwr0
|
||||
|
||||
|
||||
class TestBuildSoaWithSupport:
|
||||
"""Test support-annotated SOA building."""
|
||||
|
||||
def test_single_sequence(self):
|
||||
seqs = [["a", "b", "c"]]
|
||||
soa, supp = build_soa_with_support(seqs)
|
||||
assert len(supp) > 0
|
||||
# Should have edges: (src, a), (a, b), (b, c), (c, sink)
|
||||
assert len(supp) == 4
|
||||
|
||||
def test_multiple_sequences_share_edges(self):
|
||||
seqs = [["a", "b"], ["a", "b"]]
|
||||
soa, supp = build_soa_with_support(seqs)
|
||||
# Support keys are labeled tuples: (('SRC',), ('a',)), etc.
|
||||
src_key = (('SRC',), ('a',))
|
||||
assert src_key in supp
|
||||
assert supp[src_key] == 2
|
||||
|
||||
def test_different_sequences(self):
|
||||
seqs = [["a", "b"], ["a", "c"]]
|
||||
soa, supp = build_soa_with_support(seqs)
|
||||
# Both share (src, a) but diverge after
|
||||
src_key = (('SRC',), ('a',))
|
||||
assert src_key in supp
|
||||
assert supp[src_key] == 2
|
||||
|
||||
def test_empty_sequence(self):
|
||||
seqs = [[]]
|
||||
soa, supp = build_soa_with_support(seqs)
|
||||
empty_key = (('SRC',), ('SINK',))
|
||||
assert empty_key in supp
|
||||
|
||||
|
||||
class TestSoaDistance:
|
||||
"""Test SOA edit distance (Definition 14)."""
|
||||
|
||||
def test_identical_soas(self):
|
||||
seqs_a = [["a", "b"]]
|
||||
seqs_b = [["a", "b"]]
|
||||
_, supp_a = build_soa_with_support(seqs_a)
|
||||
_, supp_b = build_soa_with_support(seqs_b)
|
||||
assert soa_distance(supp_a, supp_b) == 0.0
|
||||
|
||||
def test_completely_disjoint(self):
|
||||
seqs_a = [["a", "b"]]
|
||||
seqs_b = [["x", "y"]]
|
||||
_, supp_a = build_soa_with_support(seqs_a)
|
||||
_, supp_b = build_soa_with_support(seqs_b)
|
||||
dist = soa_distance(supp_a, supp_b)
|
||||
# They share src->first and last->sink edges
|
||||
# But the middle edges are completely different
|
||||
assert dist > 0.5
|
||||
|
||||
def test_partial_overlap(self):
|
||||
seqs_a = [["a", "b", "c"]]
|
||||
seqs_b = [["a", "b", "d"]]
|
||||
_, supp_a = build_soa_with_support(seqs_a)
|
||||
_, supp_b = build_soa_with_support(seqs_b)
|
||||
dist = soa_distance(supp_a, supp_b)
|
||||
# Each SOA has 2 unique edges out of 4 total
|
||||
# dist = 2/4 + 2/4 = 1.0 (formula sums both sides)
|
||||
assert dist == 1.0
|
||||
|
||||
def test_asymmetric_support(self):
|
||||
"""One SOA with high support shared edges, other with unique edges."""
|
||||
seqs_a = [["a", "b"]] * 10 # (a,b) has support 10
|
||||
seqs_b = [["a", "c"]] # (a,c) has support 1
|
||||
_, supp_a = build_soa_with_support(seqs_a)
|
||||
_, supp_b = build_soa_with_support(seqs_b)
|
||||
dist = soa_distance(supp_a, supp_b)
|
||||
# dist_a = 0 (all A edges in B? no - (a,b) not in B)
|
||||
# Actually: E_A = {(SRC,a):10, (a,b):10, (b,SINK):10}
|
||||
# F_B = {(SRC,a):1, (a,c):1, (c,SINK):1}
|
||||
# E-F = {(a,b):10, (b,SINK):10} → only_a = 20, total_a = 30 → 2/3
|
||||
# F-E = {(a,c):1, (c,SINK):1} → only_b = 2, total_b = 3 → 2/3
|
||||
# dist = 2/3 + 2/3 ≈ 1.33... wait, that can't be right
|
||||
# Actually dist can exceed 1.0 because it's two separate fractions summed
|
||||
assert dist > 0.5
|
||||
|
||||
def test_symmetry(self):
|
||||
seqs_a = [["a", "b", "c"]]
|
||||
seqs_b = [["x", "y", "z"]]
|
||||
_, supp_a = build_soa_with_support(seqs_a)
|
||||
_, supp_b = build_soa_with_support(seqs_b)
|
||||
assert soa_distance(supp_a, supp_b) == soa_distance(supp_b, supp_a)
|
||||
|
||||
def test_support_weighted(self):
|
||||
# Edge with high support should contribute more to distance
|
||||
seqs_a = [["a", "b"]] * 10 + [["a", "c"]]
|
||||
seqs_b = [["a", "b"]] * 10 + [["a", "d"]]
|
||||
_, supp_a = build_soa_with_support(seqs_a)
|
||||
_, supp_b = build_soa_with_support(seqs_b)
|
||||
dist = soa_distance(supp_a, supp_b)
|
||||
# Distance should be small because (a,b) has high support in both
|
||||
assert dist < 0.2
|
||||
|
||||
|
||||
class TestAdjunctSupport:
|
||||
"""Test SOA adjunction (line 6, Algorithm 4)."""
|
||||
|
||||
def test_basic_adjunction(self):
|
||||
supp_a = {(0, 1): 5, (1, 2): 3}
|
||||
supp_b = {(0, 1): 2, (1, 3): 4}
|
||||
combined = adjunct_support(supp_a, supp_b)
|
||||
assert combined[(0, 1)] == 7 # 5 + 2
|
||||
assert combined[(1, 2)] == 3
|
||||
assert combined[(1, 3)] == 4
|
||||
|
||||
def test_disjoint_edges(self):
|
||||
supp_a = {(0, 1): 1}
|
||||
supp_b = {(2, 3): 1}
|
||||
combined = adjunct_support(supp_a, supp_b)
|
||||
assert len(combined) == 2
|
||||
|
||||
def test_empty(self):
|
||||
supp_a = {}
|
||||
supp_b = {}
|
||||
combined = adjunct_support(supp_a, supp_b)
|
||||
assert combined == {}
|
||||
|
||||
|
||||
class TestReduceContexts:
|
||||
"""Test Reduce algorithm (Algorithm 4)."""
|
||||
|
||||
def test_no_merge_high_threshold(self):
|
||||
"""With very high threshold, nothing should merge."""
|
||||
contexts = {
|
||||
"a": [["x", "y"]] * 5,
|
||||
"b": [["p", "q"]] * 5,
|
||||
}
|
||||
merged, info = reduce_contexts(contexts, threshold=0.99)
|
||||
assert info["merges"] == 0
|
||||
assert len(merged) == 2
|
||||
|
||||
def test_no_merge_identical(self):
|
||||
"""Identical contexts (dist=0) are NOT merged by Reduce.
|
||||
|
||||
From the paper: M := {(s, t) | 0 < distD(s, t) < ε}
|
||||
dist=0 means already equivalent → unified by Minimize, not Reduce.
|
||||
"""
|
||||
contexts = {
|
||||
"a": [["x", "y"]] * 5,
|
||||
"b": [["x", "y"]] * 5,
|
||||
}
|
||||
merged, info = reduce_contexts(contexts, threshold=0.5)
|
||||
assert info["merges"] == 0 # No merge for identical contexts
|
||||
assert len(merged) == 2
|
||||
|
||||
def test_merge_similar(self):
|
||||
"""Similar contexts (0 < dist < threshold) should merge.
|
||||
|
||||
Use asymmetric support: many shared sequences, few unique ones.
|
||||
This makes the unique edges have low support relative to shared edges.
|
||||
"""
|
||||
seqs_a = [["a", "b"]] * 10 + [["a", "c"]] # 10 shared, 1 unique
|
||||
seqs_b = [["a", "b"]] * 10 + [["a", "d"]] # 10 shared, 1 unique
|
||||
contexts = {
|
||||
"a": seqs_a,
|
||||
"b": seqs_b,
|
||||
}
|
||||
merged, info = reduce_contexts(contexts, threshold=0.5)
|
||||
# dist ≈ 0.12 (2/33 + 2/33), well below threshold 0.5
|
||||
assert info["merges"] >= 1
|
||||
|
||||
def test_small_contexts_preserved(self):
|
||||
"""Contexts with < 2 sequences should be preserved."""
|
||||
contexts = {
|
||||
"a": [["x", "y"]], # Only 1 sequence
|
||||
"b": [["p", "q"]] * 5,
|
||||
}
|
||||
merged, info = reduce_contexts(contexts, threshold=0.5)
|
||||
assert "a" in merged # Preserved
|
||||
assert "b" in merged
|
||||
|
||||
def test_merge_info_contains_log(self):
|
||||
"""Merge log should record each merge."""
|
||||
contexts = {
|
||||
"a": [["a", "b", "c"]] * 5,
|
||||
"b": [["a", "b", "d"]] * 5,
|
||||
}
|
||||
merged, info = reduce_contexts(contexts, threshold=0.5)
|
||||
if info["merges"] > 0:
|
||||
assert len(info["merge_log"]) == 1
|
||||
assert "merged_into" in info["merge_log"][0]
|
||||
assert "removed" in info["merge_log"][0]
|
||||
|
||||
def test_iterative_merging(self):
|
||||
"""Multiple iterations should work correctly."""
|
||||
# Create contexts that form a chain: a~b, b~c, but a!~c
|
||||
contexts = {
|
||||
"a": [["a", "b"]] * 5,
|
||||
"b": [["a", "b", "c"]] * 5,
|
||||
"c": [["a", "b", "c", "d"]] * 5,
|
||||
}
|
||||
merged, info = reduce_contexts(contexts, threshold=0.6)
|
||||
# Should merge at least some pairs
|
||||
assert info["iterations"] >= 1
|
||||
|
||||
|
||||
class TestMinimizeContexts:
|
||||
"""Test Minimize (Line 15, Algorithm 4)."""
|
||||
|
||||
def test_merge_same_sore(self):
|
||||
"""Contexts with identical SOREs should be merged."""
|
||||
# Both contexts produce the same SORE
|
||||
contexts = {
|
||||
"a": [["mockk"]] * 5,
|
||||
"b": [["mockk"]] * 5,
|
||||
}
|
||||
minimized = minimize_contexts(contexts)
|
||||
# Should merge into one context
|
||||
assert len(minimized) == 1
|
||||
total_seqs = sum(len(v) for v in minimized.values())
|
||||
assert total_seqs == 10
|
||||
|
||||
def test_keep_different_sores(self):
|
||||
"""Contexts with different SOREs should stay separate."""
|
||||
contexts = {
|
||||
"a": [["a", "b"]] * 5,
|
||||
"b": [["x", "y"]] * 5,
|
||||
}
|
||||
minimized = minimize_contexts(contexts)
|
||||
assert len(minimized) == 2
|
||||
|
||||
def test_empty_contexts(self):
|
||||
"""Empty contexts should be handled gracefully."""
|
||||
contexts = {}
|
||||
minimized = minimize_contexts(contexts)
|
||||
assert len(minimized) == 0
|
||||
|
||||
|
||||
class TestReduceAndInfer:
|
||||
"""Test full pipeline: Reduce + Minimize + Infer."""
|
||||
|
||||
def test_basic_pipeline(self):
|
||||
contexts = {
|
||||
"a": [["a", "b", "c"]] * 5,
|
||||
"b": [["a", "b", "d"]] * 5,
|
||||
}
|
||||
result = reduce_and_infer(contexts, threshold=0.5)
|
||||
assert "merged" in result
|
||||
assert "infer_results" in result
|
||||
assert "merge_info" in result
|
||||
assert "minimize_info" in result
|
||||
|
||||
def test_coverage_count(self):
|
||||
"""Coverage count should equal total methods in successful contexts."""
|
||||
contexts = {
|
||||
"a": [["a", "b"]] * 5,
|
||||
"b": [["x", "y"]] * 5,
|
||||
}
|
||||
result = reduce_and_infer(contexts, threshold=0.99) # No merging
|
||||
assert result["coverage_count"] >= 0
|
||||
Loading…
Add table
Reference in a new issue