mirror of
https://github.com/diegosouzapw/OmniRoute.git
synced 2026-09-16 03:42:21 +03:00
Landed with the design call resolved per the owner's pick — **option 1**: the synced store is now endpoint-agnostic (persistDiscoveredModels and managedModelImport no longer drop non-chat models at write time), and chat selectability moved to read time (auto-pool expansion in autoStrategy applies filterChatSelectableModels; the models-route projection already had its chatOnly filter). Your discovery test now passes end-to-end (3/3): /api/show capabilities persist per connection and image/embedding requests route through the advertising host. Reconciliation notes: conflicted areas merged onto the current tip (adobe discovery import, requestedModel preflight signature, resolvedProvider fast-path coexists with the synced-route override — explicit resolution wins); carried base-red drains (#10055 memoization, #11071 test variants) dropped as already-landed; the managed-model-import exclusion test was propagated to the new contract (image/video models persist; the read filter still hides them from chat pickers — pinned by a new assertion). Full battery: 205/206 focused (the one red is a confirmed periodic-timer timing flake on the loaded devbox — 20/20 isolated), autoCombo vitest 30/30, combo suites 46/46, gates + typecheck clean. Thank you @yourspraveen — the capability probe + routing design was right; it just needed the store contract opened up. Fixes #11087.
102 lines
3.2 KiB
JSON
102 lines
3.2 KiB
JSON
{
|
||
"language": "ru",
|
||
"category": "structural",
|
||
"rules": [
|
||
{
|
||
"name": "problem_phrasing",
|
||
"pattern": "\\b(?:проблема заключается в том, что|дело в том, что|суть в том, что)\\b\\s*",
|
||
"replacement": "проблема: ",
|
||
"context": "all",
|
||
"category": "structural",
|
||
"minIntensity": "full"
|
||
},
|
||
{
|
||
"name": "causality_verbose",
|
||
"pattern": "\\b(?:это приводит к тому, что|это означает, что|из этого следует, что)\\b\\s*",
|
||
"replacement": "→ ",
|
||
"context": "all",
|
||
"category": "structural",
|
||
"minIntensity": "full"
|
||
},
|
||
{
|
||
"name": "purpose_phrases",
|
||
"pattern": "\\b(?:для того чтобы|с целью того чтобы)\\b\\s*",
|
||
"replacement": "чтобы ",
|
||
"context": "all",
|
||
"category": "structural",
|
||
"minIntensity": "lite"
|
||
},
|
||
{
|
||
"name": "causality_phrases",
|
||
"pattern": "\\b(?:в связи с тем, что|по причине того, что|ввиду того, что)\\b\\s*",
|
||
"replacement": "из-за ",
|
||
"context": "all",
|
||
"category": "structural",
|
||
"minIntensity": "full"
|
||
},
|
||
{
|
||
"name": "concession_phrases",
|
||
"pattern": "\\b(?:несмотря на то, что|хотя и)\\b\\s*",
|
||
"replacement": "хотя ",
|
||
"context": "all",
|
||
"category": "structural",
|
||
"minIntensity": "lite"
|
||
},
|
||
{
|
||
"name": "note_phrases",
|
||
"pattern": "\\b(?:стоит отметить, что|следует иметь в виду, что|важно понимать, что|необходимо учитывать, что)\\b\\s*",
|
||
"replacement": "",
|
||
"context": "all",
|
||
"category": "structural",
|
||
"minIntensity": "full"
|
||
},
|
||
{
|
||
"name": "redundant_directive",
|
||
"pattern": "\\b(?:важно помнить|не забывайте|помните о том)\\b\\s*",
|
||
"replacement": "",
|
||
"context": "all",
|
||
"category": "structural",
|
||
"minIntensity": "full"
|
||
},
|
||
{
|
||
"name": "approximation",
|
||
"pattern": "\\b(?:примерно|приблизительно)\\b\\s*",
|
||
"replacement": "≈ ",
|
||
"context": "all",
|
||
"category": "structural",
|
||
"minIntensity": "full"
|
||
},
|
||
{
|
||
"name": "forbidden_abbreviations_dots",
|
||
"pattern": "\\b(?:т\\.к\\.|т\\.е\\.|и т\\.д\\.|и т\\.п\\.|см\\.|напр\\.|и др\\.|в т\\.ч\\.)\\b",
|
||
"replacement": "",
|
||
"replacementMap": {
|
||
"т.к.": "так как",
|
||
"т.е.": "то есть",
|
||
"и т.д.": "",
|
||
"и т.п.": "",
|
||
"см.": "см",
|
||
"напр.": "например",
|
||
"и др.": "",
|
||
"в т.ч.": ""
|
||
},
|
||
"context": "all",
|
||
"category": "structural",
|
||
"minIntensity": "lite"
|
||
},
|
||
{
|
||
"name": "forbidden_abbreviations_dash",
|
||
"pattern": "\\b(?:кол-во|к-рый|св-во)\\b",
|
||
"replacement": "",
|
||
"replacementMap": {
|
||
"кол-во": "количество",
|
||
"к-рый": "который",
|
||
"св-во": "свойство"
|
||
},
|
||
"context": "all",
|
||
"category": "structural",
|
||
"minIntensity": "lite"
|
||
}
|
||
]
|
||
}
|