Part of #2560 — per-language tracking for the keyword-rosetta control corpus (built for #1096). Planted intent is identical in every language, so every deviation below is measured bias vs. the 46-language median, validated in the corpus's deviation ledger. 🔴 = beyond ±50% of the cross-language median, 🟡 = ±25–50%.
Triage order (per the epic): structure detection first, then signal/keyword rules, then risk-score consequences — §3's numbers are downstream of §1–§2 and re-baseline as those fix. Cross-cutting engine issues (e.g. #2535/#2546) fix many languages at once; this issue tracks this language's residual after each cross-cutting fix lands, and closes when the language sits inside the ±25% band on every comparable metric (or every remaining deviation is ledgered as intended morphology).
1. Structure detection (fix first)
- 🔴
args: 3 vs median 13 (-77%)
2. Signal / keyword deviations
- 🔴
cleanup: 0 vs median 2 (-100%)
- 🔴
doc: 0 vs median 1 (-100%)
- 🔴
globals: 0 vs median 2 (-100%)
- 🔴
io: 0 vs median 3 (-100%)
- 🔴
ownership: 0 vs median 1 (-100%)
- 🔴
safety_bypasses: 0 vs median 2 (-100%)
- 🔴
state_mutation: 0 vs median 6 (-100%)
- 🔴
telemetry: 0 vs median 2 (-100%)
- 🟡
branch: 3 vs median 5 (-40%)
- 🟡
keyword_hits: 147 vs median 247.5 (-41%)
- 🟡
safety: 1 vs median 2 (-50%)
3. Risk-exposure consequences (downstream)
- 🔴
risk_api_exposure: 0 vs median 5.31104 (-100%)
- 🔴
risk_cognitive_load: 4 vs median 15.1444 (-74%)
- 🔴
risk_documentation: 26.4404 vs median 57.1208 (-54%)
- 🔴
risk_spec_match: 45.3333 vs median 96 (-53%)
- 🔴
risk_state_flux: 0 vs median 19.9999 (-100%)
- 🟡
risk_safety_score: 19.8485 vs median 37.297 (-47%)
- 🟡
risk_verification: 1.27414 vs median 2.3628 (-46%)
Ledgered shapes touching css
| defect |
type |
issue |
evidence |
summary |
census-requires-git-tracked |
engine-semantic |
— |
— |
GalaxyScope's census enumerates git-tracked files only; an untracked folder scans as '0 files mapped' with no per-file warning |
batch5-tier2-morphology-shapes |
keyword-overlap |
— |
— |
Collective entry for Tier-2 finditer/report-confirmed shapes, detailed per-manifest: css at-rules triple-count (func+branch, @supports also safety; args tracks @import u… |
Decoy outcomes (file-level evidence)
Reproduce / evidence
Part of #2560 — per-language tracking for the keyword-rosetta control corpus (built for #1096). Planted intent is identical in every language, so every deviation below is measured bias vs. the 46-language median, validated in the corpus's deviation ledger. 🔴 = beyond ±50% of the cross-language median, 🟡 = ±25–50%.
Triage order (per the epic): structure detection first, then signal/keyword rules, then risk-score consequences — §3's numbers are downstream of §1–§2 and re-baseline as those fix. Cross-cutting engine issues (e.g. #2535/#2546) fix many languages at once; this issue tracks this language's residual after each cross-cutting fix lands, and closes when the language sits inside the ±25% band on every comparable metric (or every remaining deviation is ledgered as intended morphology).
1. Structure detection (fix first)
args: 3 vs median 13 (-77%)2. Signal / keyword deviations
cleanup: 0 vs median 2 (-100%)doc: 0 vs median 1 (-100%)globals: 0 vs median 2 (-100%)io: 0 vs median 3 (-100%)ownership: 0 vs median 1 (-100%)safety_bypasses: 0 vs median 2 (-100%)state_mutation: 0 vs median 6 (-100%)telemetry: 0 vs median 2 (-100%)branch: 3 vs median 5 (-40%)keyword_hits: 147 vs median 247.5 (-41%)safety: 1 vs median 2 (-50%)3. Risk-exposure consequences (downstream)
risk_api_exposure: 0 vs median 5.31104 (-100%)risk_cognitive_load: 4 vs median 15.1444 (-74%)risk_documentation: 26.4404 vs median 57.1208 (-54%)risk_spec_match: 45.3333 vs median 96 (-53%)risk_state_flux: 0 vs median 19.9999 (-100%)risk_safety_score: 19.8485 vs median 37.297 (-47%)risk_verification: 1.27414 vs median 2.3628 (-46%)Ledgered shapes touching css
census-requires-git-trackedbatch5-tier2-morphology-shapesDecoy outcomes (file-level evidence)
@media / @supports / @container(code): the three planted branch at-rules are TRIPLE-counted: each is func_start (the CSS at-rules (@layer / @media / @supports) counted as functions; css tree-sitter-accuracy baseline stale (real_functions 24→25) #2507/sqlite tri-comparison validation: class extraction to 100%, both ledger shapes validated #2513 'closest function-shaped construct' precedent), @media/@supports/@container are branch, and @supports is also safety — one @supports line = 3 signalsReproduce / evidence
data/css/—expected_signals.jsoncarries the shape-by-shape accountingGALAXYSCOPE_BIN=<venv>/bin/galaxyscope python tools/verify_language.py cssin the corpus repo