Маркер «вот где остановилась mechanic-сессия» — не разбито по логическим коммитам,
зафиксировано целиком чтобы не потерять при отвлечении/чекаутах.
Modified:
- pages/InspectionEditor.tsx — расширение damage-flow внутри редактора
- pages/VehicleCard.tsx — vendor data + расширение карточки
- pages/InspectionReview.tsx — обновлённый review
- api/{auth,inspections,photos,vehicles}.ts — новые endpoints для TT + photo flow
- components/damage-flow/DamageClassifyDialog.tsx — multi-step UI
- components/vehicle-scheme/VendorVehicleScheme.tsx — SVG zone interaction
- data/damageVocabulary.ts — обновлённый словарь повреждений
- frontend index.html/manifest/icons — PWA-метаданные
New (untracked):
- components/damage-flow/PhotoAnnotateStep.tsx — новый шаг flow'а
- components/tt/ — vendor TT-state UI
- pages/TtStateDetail.tsx — экран осмотра вендора
- recon/findings/damage_model.md + damage_vocabulary.json + scheme/ — recon docs
Cleanup: удалены bash-garbage 'Last' и 'dict[str' из frontend/.
67 lines
3.5 KiB
JSON
67 lines
3.5 KiB
JSON
{
|
||
"_meta": {
|
||
"source": "Ttc.dll #US heap, offsets 0x751c7–0x75a81 (consecutive UTF-16 LE strings)",
|
||
"confidence": "HIGH — 57 strings appear in exact sequential order in a single contiguous block, matching the 57 class IDs (0..56) in exterior_scheme_complete.svg",
|
||
"geographic_check": "confirmed: zone 0 (front bumper) at SVG Y=119 (top), zone 22 (rear bumper) at Y=1064 (bottom); left-side zones have small X, right-side zones have large X",
|
||
"note_typo": "zone 15 has a typo in the vendor binary: 'правй порог' (missing 'ы') — preserve as-is for matching but display as 'правый порог'",
|
||
"note_zones_34_57": "zones 34–37 are fog lights (противотуманки), zones 38–39 mirrors, 40–43 disks, 44–46 salon seats, 47–48 rear sill extensions, 49–56 bumper sub-parts and pillars"
|
||
},
|
||
"0": "передний бампер",
|
||
"1": "передняя правая фара",
|
||
"2": "передняя левая фара",
|
||
"3": "радиатор",
|
||
"4": "капот",
|
||
"5": "лобовое стекло",
|
||
"6": "переднее левое крыло",
|
||
"7": "переднее правое крыло",
|
||
"8": "заднее левое крыло",
|
||
"9": "заднее правое крыло",
|
||
"10": "передняя левая дверь",
|
||
"11": "передняя правая дверь",
|
||
"12": "задняя левая дверь",
|
||
"13": "задняя правая дверь",
|
||
"14": "левый порог",
|
||
"15": "правый порог",
|
||
"16": "крыша",
|
||
"17": "передняя правая резина",
|
||
"18": "передняя левая резина",
|
||
"19": "задняя правая резина",
|
||
"20": "задняя левая резина",
|
||
"21": "багажник",
|
||
"22": "задний бампер",
|
||
"23": "заднее стекло",
|
||
"24": "переднее левое стекло",
|
||
"25": "переднее правое стекло",
|
||
"26": "заднее левое стекло",
|
||
"27": "заднее правое стекло",
|
||
"28": "передняя левая форточка",
|
||
"29": "передняя правая форточка",
|
||
"30": "задняя правая форточка",
|
||
"31": "задняя левая форточка",
|
||
"32": "задняя правая фара",
|
||
"33": "задняя левая фара",
|
||
"34": "передняя правая противотуманка",
|
||
"35": "передняя левая противотуманка",
|
||
"36": "задняя правая противотуманка",
|
||
"37": "задняя левая противотуманка",
|
||
"38": "правое зеркало",
|
||
"39": "левое зеркало",
|
||
"40": "задний левый диск",
|
||
"41": "задний правый диск",
|
||
"42": "передний правый диск",
|
||
"43": "передний левый диск",
|
||
"44": "водительское сидение",
|
||
"45": "пассажирское сидение",
|
||
"46": "задний диван",
|
||
"47": "задний левый порог",
|
||
"48": "задний правый порог",
|
||
"49": "задняя левая часть бампера",
|
||
"50": "задняя правая часть бампера",
|
||
"51": "передняя левая часть бампера",
|
||
"52": "передняя правая часть бампера",
|
||
"53": "задняя левая стойка",
|
||
"54": "задняя правая стойка",
|
||
"55": "передняя левая стойка",
|
||
"56": "передняя правая стойка"
|
||
}
|