diff --git a/backend_old/src/edcmbone/__init__.py b/backend_old/src/edcmbone/__init__.py index ef5c367..50b5f44 100644 --- a/backend_old/src/edcmbone/__init__.py +++ b/backend_old/src/edcmbone/__init__.py @@ -1,3 +1,4 @@ +# ratios: loc_comments=28:7 imports_exports=3:1 calls_definitions=0:0 __version__ = "0.1.0" from .canon import CanonLoader @@ -35,3 +36,4 @@ "A_MATRIX", "PROJECTION_MAP", "ALERT_THRESHOLDS", "RISK_TO_ALERT", "MATRIX_VERSION", "freeze", "diff", ] +# ratios: loc_comments=28:7 imports_exports=3:1 calls_definitions=0:0 diff --git a/backend_old/src/edcmbone/canon/__init__.py b/backend_old/src/edcmbone/canon/__init__.py index e46ed25..3e17d22 100644 --- a/backend_old/src/edcmbone/canon/__init__.py +++ b/backend_old/src/edcmbone/canon/__init__.py @@ -1,3 +1,5 @@ +# ratios: loc_comments=2:0 imports_exports=1:1 calls_definitions=0:0 from .loader import CanonLoader __all__ = ["CanonLoader"] +# ratios: loc_comments=2:0 imports_exports=1:1 calls_definitions=0:0 diff --git a/backend_old/src/edcmbone/canon/loader.py b/backend_old/src/edcmbone/canon/loader.py index 866f473..2a2b075 100644 --- a/backend_old/src/edcmbone/canon/loader.py +++ b/backend_old/src/edcmbone/canon/loader.py @@ -1,3 +1,4 @@ +# ratios: loc_comments=80:79 imports_exports=3:1 calls_definitions=40:15 """ edcmbone.canon.loader ~~~~~~~~~~~~~~~~~~~~~ @@ -194,3 +195,4 @@ def meta(self, dataset): dataset, list(mapping.keys()) )) return mapping[dataset].get("_meta", {}) +# ratios: loc_comments=80:79 imports_exports=3:1 calls_definitions=40:15 diff --git a/backend_old/src/edcmbone/compress.py b/backend_old/src/edcmbone/compress.py index ae77e64..b35148d 100644 --- a/backend_old/src/edcmbone/compress.py +++ b/backend_old/src/edcmbone/compress.py @@ -1,3 +1,4 @@ +# ratios: loc_comments=168:115 imports_exports=9:5 calls_definitions=63:11 """ edcmbone.compress ~~~~~~~~~~~~~~~~~ @@ -348,3 +349,4 @@ def compression_stats(original_text, compressed_bytes, parsed): "bone_stream_huffman_bits": round(bone_huffman_bits, 1), "bone_stream_savings_pct": round(bone_savings, 2), } +# ratios: loc_comments=168:115 imports_exports=9:5 calls_definitions=63:11 diff --git a/backend_old/src/edcmbone/metrics/__init__.py b/backend_old/src/edcmbone/metrics/__init__.py index 97e838b..221cd90 100644 --- a/backend_old/src/edcmbone/metrics/__init__.py +++ b/backend_old/src/edcmbone/metrics/__init__.py @@ -1,3 +1,4 @@ +# ratios: loc_comments=34:6 imports_exports=6:1 calls_definitions=0:0 from .compute import RoundMetrics, compute_round, compute_transcript, energy_step from .stats import ( tokenize, ngrams, ttr, repetition_ratio, shannon_entropy, @@ -39,3 +40,4 @@ "AxisState", "MetricAxis", "MetricReadout", "ConstraintField", "FieldMotion", "canonical_axes", "field_motion_fixture", "FIELD_MOTION_FIXTURE_MATRIX", ] +# ratios: loc_comments=34:6 imports_exports=6:1 calls_definitions=0:0 diff --git a/backend_old/src/edcmbone/metrics/compute.py b/backend_old/src/edcmbone/metrics/compute.py index b5bedfd..aa8dce0 100644 --- a/backend_old/src/edcmbone/metrics/compute.py +++ b/backend_old/src/edcmbone/metrics/compute.py @@ -1,3 +1,4 @@ +# ratios: loc_comments=200:145 imports_exports=6:4 calls_definitions=89:20 """ edcmbone.metrics.compute ~~~~~~~~~~~~~~~~~~~~~~~~ @@ -423,4 +424,5 @@ def compute_transcript(parsed_transcript, canon=None, alpha=0.85, delta_max=0.3) prev_kappa = m.kappa prev_entropy = shannon_entropy(tokenize(" ".join(t.text for t in rnd.turns))) - return results \ No newline at end of file + return results +# ratios: loc_comments=200:145 imports_exports=6:4 calls_definitions=89:20 diff --git a/backend_old/src/edcmbone/metrics/matrix.py b/backend_old/src/edcmbone/metrics/matrix.py index 1b63c23..1a177ee 100644 --- a/backend_old/src/edcmbone/metrics/matrix.py +++ b/backend_old/src/edcmbone/metrics/matrix.py @@ -1,3 +1,4 @@ +# ratios: loc_comments=118:125 imports_exports=4:2 calls_definitions=15:2 """ edcmbone.metrics.matrix ~~~~~~~~~~~~~~~~~~~~~~~ @@ -265,3 +266,4 @@ def diff(matrix_a: dict, matrix_b: dict) -> dict: if wa != wb: changes[(metric, prim)] = (wa, wb) return changes +# ratios: loc_comments=118:125 imports_exports=4:2 calls_definitions=15:2 diff --git a/backend_old/src/edcmbone/metrics/orthogonality.py b/backend_old/src/edcmbone/metrics/orthogonality.py index e62f6f1..8419fa2 100644 --- a/backend_old/src/edcmbone/metrics/orthogonality.py +++ b/backend_old/src/edcmbone/metrics/orthogonality.py @@ -1,3 +1,4 @@ +# ratios: loc_comments=230:94 imports_exports=4:7 calls_definitions=44:25 """EDCM / UCNS metric orthogonality primitives. Implements the v0.2 signed-axis model for metric identity and state transport, @@ -388,3 +389,4 @@ def canonical_axes() -> Dict[str, MetricAxis]: "edcm.projection.TBF": MetricAxis("edcm.projection.TBF", "speaker-share fairness projection", "projection", primitive=False), } return axes +# ratios: loc_comments=230:94 imports_exports=4:7 calls_definitions=44:25 diff --git a/backend_old/src/edcmbone/metrics/projection.py b/backend_old/src/edcmbone/metrics/projection.py index 8ce35af..2e6f3aa 100644 --- a/backend_old/src/edcmbone/metrics/projection.py +++ b/backend_old/src/edcmbone/metrics/projection.py @@ -1,3 +1,4 @@ +# ratios: loc_comments=77:96 imports_exports=4:6 calls_definitions=28:10 """ edcmbone.metrics.projection ~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -214,3 +215,4 @@ def project_transcript(parsed_transcript, layer1_metrics): for rnd, m in zip(parsed_transcript.rounds, layer1_metrics): results.append(project(m, rnd.turns)) return results +# ratios: loc_comments=77:96 imports_exports=4:6 calls_definitions=28:10 diff --git a/backend_old/src/edcmbone/metrics/risk.py b/backend_old/src/edcmbone/metrics/risk.py index 1018614..fda259d 100644 --- a/backend_old/src/edcmbone/metrics/risk.py +++ b/backend_old/src/edcmbone/metrics/risk.py @@ -1,3 +1,4 @@ +# ratios: loc_comments=37:66 imports_exports=2:5 calls_definitions=25:5 """ edcmbone.metrics.risk ~~~~~~~~~~~~~~~~~~~~~ @@ -127,3 +128,4 @@ def loop_risk(tokens_a, tokens_b): rep_ngram = rep_ngram_density(tokens_b, n=3) cos = cosine_sim(tokens_a, tokens_b) return clamp(0.5 * rep_b + 0.3 * rep_ngram + 0.2 * cos) +# ratios: loc_comments=37:66 imports_exports=2:5 calls_definitions=25:5 diff --git a/backend_old/src/edcmbone/metrics/stats.py b/backend_old/src/edcmbone/metrics/stats.py index e195c12..46ee837 100644 --- a/backend_old/src/edcmbone/metrics/stats.py +++ b/backend_old/src/edcmbone/metrics/stats.py @@ -1,3 +1,4 @@ +# ratios: loc_comments=76:84 imports_exports=4:13 calls_definitions=46:14 """ edcmbone.metrics.stats ~~~~~~~~~~~~~~~~~~~~~~ @@ -206,3 +207,4 @@ def norm_per_100(x, tokens): if not tokens: return 0.0 return float(x) * 100.0 / len(tokens) +# ratios: loc_comments=76:84 imports_exports=4:13 calls_definitions=46:14 diff --git a/backend_old/src/edcmbone/parser/__init__.py b/backend_old/src/edcmbone/parser/__init__.py index a3a4587..af57e27 100644 --- a/backend_old/src/edcmbone/parser/__init__.py +++ b/backend_old/src/edcmbone/parser/__init__.py @@ -1,3 +1,4 @@ +# ratios: loc_comments=9:0 imports_exports=1:1 calls_definitions=0:0 from .turns_rounds import parse_transcript, ParsedTranscript, Turn, Round, BoneToken, FleshToken __all__ = [ @@ -8,3 +9,4 @@ "BoneToken", "FleshToken", ] +# ratios: loc_comments=9:0 imports_exports=1:1 calls_definitions=0:0 diff --git a/backend_old/src/edcmbone/parser/turns_rounds.py b/backend_old/src/edcmbone/parser/turns_rounds.py index fde2f45..0c087a1 100644 --- a/backend_old/src/edcmbone/parser/turns_rounds.py +++ b/backend_old/src/edcmbone/parser/turns_rounds.py @@ -1,3 +1,4 @@ +# ratios: loc_comments=225:119 imports_exports=5:6 calls_definitions=82:26 """ edcmbone.parser.turns_rounds ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -427,3 +428,4 @@ def _ordered_unique(iterable): seen.add(item) result.append(item) return result +# ratios: loc_comments=225:119 imports_exports=5:6 calls_definitions=82:26 diff --git a/backend_old/src/edcmbone/ucns/__init__.py b/backend_old/src/edcmbone/ucns/__init__.py index ccff9d0..c64c819 100644 --- a/backend_old/src/edcmbone/ucns/__init__.py +++ b/backend_old/src/edcmbone/ucns/__init__.py @@ -1,3 +1,4 @@ +# ratios: loc_comments=8:1 imports_exports=1:1 calls_definitions=0:0 # edcmbone.ucns — UCNS (Universal Cognitive Notation System) encoders from .closed_tokens import encode, class_of, feature_payload_of, DISPATCH, CLASS_NAMES @@ -8,3 +9,4 @@ "DISPATCH", "CLASS_NAMES", ] +# ratios: loc_comments=8:1 imports_exports=1:1 calls_definitions=0:0 diff --git a/backend_old/src/edcmbone/ucns/closed_tokens.py b/backend_old/src/edcmbone/ucns/closed_tokens.py index 4844849..4bc0c46 100644 --- a/backend_old/src/edcmbone/ucns/closed_tokens.py +++ b/backend_old/src/edcmbone/ucns/closed_tokens.py @@ -1,3 +1,4 @@ +# ratios: loc_comments=351:140 imports_exports=6:3 calls_definitions=70:9 """ edcmbone — Closed-Token UCNS Encoder @@ -572,3 +573,4 @@ def feature_payload_of(obj: UCNSObject) -> Optional[UCNSObject]: if len(obj.anchors_pos) != 2: return None return obj.anchors_pos[1].payload +# ratios: loc_comments=351:140 imports_exports=6:3 calls_definitions=70:9 diff --git a/backend_old/src/edcmbone/ucns/ucns_v04.py b/backend_old/src/edcmbone/ucns/ucns_v04.py index 1ee315a..49aeda9 100644 --- a/backend_old/src/edcmbone/ucns/ucns_v04.py +++ b/backend_old/src/edcmbone/ucns/ucns_v04.py @@ -1,3 +1,4 @@ +# ratios: loc_comments=118:70 imports_exports=5:6 calls_definitions=40:14 """ ucns_v04 — UCNS Engine (turn-fraction angle convention) ======================================================== @@ -226,3 +227,4 @@ def multiply(A: UCNSObject, B: UCNSObject) -> UCNSObject: anchors_pos=tuple(new_anchors), faces_pos=tuple(new_faces), ) +# ratios: loc_comments=118:70 imports_exports=5:6 calls_definitions=40:14 diff --git a/tests/conftest.py b/tests/conftest.py index 3e04528..39d2d9b 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -4,10 +4,10 @@ from pathlib import Path ROOT = Path(__file__).resolve().parents[1] -BACKEND_SRC = ROOT / "backend" / "src" +BACKEND_SRC = ROOT / "backend_old" / "src" # BACKEND_SRC must precede ROOT on sys.path: both contain an ``edcmbone`` -# package, but only backend/src/edcmbone carries CanonLoader + metrics. ROOT +# package, but only backend_old/src/edcmbone carries CanonLoader + metrics. ROOT # stays on the path for the top-level test modules (core, engine, ucns_v04, # closed_tokens); the repo-root ``edcmbone`` package is only ever loaded by # tests under an explicit alias (see test_ucns_g_schema), never as ``edcmbone``. diff --git a/tests/test_affix_residual_validation.py b/tests/test_affix_residual_validation.py index 4ab77f8..0cb220f 100644 --- a/tests/test_affix_residual_validation.py +++ b/tests/test_affix_residual_validation.py @@ -2,7 +2,7 @@ import sys ROOT = Path(__file__).resolve().parents[1] -BACKEND_SRC = ROOT / "backend" / "src" +BACKEND_SRC = ROOT / "backend_old" / "src" if str(BACKEND_SRC) not in sys.path: sys.path.insert(0, str(BACKEND_SRC)) diff --git a/tests/test_apostrophe_normalization_and_tokenization.py b/tests/test_apostrophe_normalization_and_tokenization.py index e865278..62cb5dc 100644 --- a/tests/test_apostrophe_normalization_and_tokenization.py +++ b/tests/test_apostrophe_normalization_and_tokenization.py @@ -6,7 +6,7 @@ def _parser_word_re(): repo_root = Path(__file__).resolve().parents[1] - src_path = repo_root / "backend" / "src" / "edcmbone" / "parser" / "turns_rounds.py" + src_path = repo_root / "backend_old" / "src" / "edcmbone" / "parser" / "turns_rounds.py" src = src_path.read_text() m = re.search(r"_WORD_RE\s*=\s*re\.compile\(r\"([^\"]+)\"\)", src) assert m, "Could not locate _WORD_RE in parser/turns_rounds.py" diff --git a/tests/test_metric_orthogonality_v02.py b/tests/test_metric_orthogonality_v02.py index 6c9cab6..1df0be3 100644 --- a/tests/test_metric_orthogonality_v02.py +++ b/tests/test_metric_orthogonality_v02.py @@ -3,7 +3,7 @@ from pathlib import Path ROOT = Path(__file__).resolve().parents[1] -BACKEND_SRC = ROOT / "backend" / "src" +BACKEND_SRC = ROOT / "backend_old" / "src" def _load_package(package_name: str, package_dir: Path): diff --git a/tests/test_metrics_layer_designation.py b/tests/test_metrics_layer_designation.py index 0e5ee20..89c7de7 100644 --- a/tests/test_metrics_layer_designation.py +++ b/tests/test_metrics_layer_designation.py @@ -3,7 +3,7 @@ from pathlib import Path ROOT = Path(__file__).resolve().parents[1] -BACKEND_SRC = ROOT / "backend" / "src" +BACKEND_SRC = ROOT / "backend_old" / "src" def _load_package(package_name: str, package_dir: Path): diff --git a/tests/test_polarity_balance.py b/tests/test_polarity_balance.py index c82509c..44d8254 100644 --- a/tests/test_polarity_balance.py +++ b/tests/test_polarity_balance.py @@ -12,7 +12,7 @@ from pathlib import Path REPO_ROOT = Path(__file__).resolve().parents[1] -WORDS_PATH = REPO_ROOT / "backend" / "src" / "edcmbone" / "canon" / "data" / "bones_words_v1.json" +WORDS_PATH = REPO_ROOT / "backend_old" / "src" / "edcmbone" / "canon" / "data" / "bones_words_v1.json" def _word_tokens(): diff --git a/tests/test_ucns_g_schema.py b/tests/test_ucns_g_schema.py index 944436b..3702b0d 100644 --- a/tests/test_ucns_g_schema.py +++ b/tests/test_ucns_g_schema.py @@ -11,7 +11,7 @@ * Grain order is token < turn < round < session < archive. These tests do not exercise the scalar EDCM metric vector in -``backend/src/edcmbone/metrics/compute.py`` — UCNS-G is additive to the +``backend_old/src/edcmbone/metrics/compute.py`` — UCNS-G is additive to the scalar layer, not a replacement. """ diff --git a/tests/test_ucns_objects.py b/tests/test_ucns_objects.py index 74b0be4..62556c3 100644 --- a/tests/test_ucns_objects.py +++ b/tests/test_ucns_objects.py @@ -10,7 +10,7 @@ from pathlib import Path ROOT = Path(__file__).resolve().parents[1] -BACKEND_SRC = ROOT / "backend" / "src" +BACKEND_SRC = ROOT / "backend_old" / "src" def _load_package(package_name: str, package_dir: Path):