[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"media-detail-with-another-kogda-tablicu-pora-zamenyat-vnutrenney-sistemoy":3},{"media":4,"anotherMedia":780},{"id":5,"documentId":6,"title":7,"date":8,"description":9,"order":10,"slug":11,"showOnMainPage":12,"createdAt":13,"updatedAt":14,"publishedAt":15,"locale":16,"media_areas":17,"cover":728,"content":775},449,"unrbovgyet8007ch5rlh115h","Когда таблица становится внутренней системой","2026-09-25",null,501,"kogda-tablicu-pora-zamenyat-vnutrenney-sistemoy",true,"2026-09-25T08:18:33.492Z","2026-09-25T10:45:03.936Z","2026-09-25T10:45:04.057Z","ru",[18,698],{"id":19,"documentId":20,"title":21,"slug":22,"order":23,"createdAt":24,"updatedAt":24,"publishedAt":25,"locale":16,"media":26,"localizations":697},2,"ei24o3vyhndi1hqwqhnd61p0","Все","ALL",500,"2026-02-25T07:47:50.713Z","2026-02-25T07:47:50.739Z",[27,38,48,58,67,76,85,94,104,113,123,132,141,150,159,168,177,186,195,204,214,223,232,241,251,260,269,278,287,296,304,314,324,333,342,351,360,369,378,387,396,405,414,423,432,441,450,459,468,477,486,493,501,509,517,524,532,540,549,557,565,573,581,589,597,606,616,625,633,642,650,658,666,673,681,689,696],{"id":28,"documentId":29,"title":30,"date":31,"description":32,"order":33,"slug":34,"showOnMainPage":12,"createdAt":35,"updatedAt":36,"publishedAt":37,"locale":16},194,"ogd13ylii6xd51tsg0yg5vjm","Мы регулярно участвуем в премиях \u2028и рейтингах ","2025-12-12","В этом году мы не «надеялись на победу» — мы за ней поехали",600,"my-regulyarno-uchastvuem-v-premiyah-i-rejtingah-1","2026-02-27T13:43:43.450Z","2026-07-30T14:49:41.482Z","2026-07-30T14:49:41.550Z",{"id":39,"documentId":40,"title":41,"date":42,"description":43,"order":33,"slug":44,"showOnMainPage":12,"createdAt":45,"updatedAt":46,"publishedAt":47,"locale":16},432,"ydsmydf287a3yxdji1i4r5z1","еще одна победа!","2025-12-04","Проект Qtim — приложение «Дневник» для «Онлайн-школы №1» — занял третье место в Рейтинге Рунета.","eshhe-odna-pobeda","2026-03-04T07:03:38.855Z","2026-09-24T08:03:19.588Z","2026-09-24T08:03:19.684Z",{"id":49,"documentId":50,"title":51,"date":52,"description":53,"order":33,"slug":54,"showOnMainPage":12,"createdAt":55,"updatedAt":56,"publishedAt":57,"locale":16},431,"r3pwx014em719gtwicw9p36t"," церемония награждения премии «Золотой сайт»","2024-12-20","Онлайн-школа №1 забирает все награды","czeremoniya-nagrazhdeniya-premii-zolotoj-sajt","2026-03-04T10:16:10.453Z","2026-09-24T08:02:37.029Z","2026-09-24T08:02:37.109Z",{"id":59,"documentId":60,"title":61,"date":62,"description":9,"order":23,"slug":63,"showOnMainPage":12,"createdAt":64,"updatedAt":65,"publishedAt":66,"locale":16},136,"ej9r23ghy5qy8etbvuujvhun","ФНС проверяет реальность ИТ-разработок","2026-03-25","fns-proveryaet-realnost-it-razrabotok-chto-mozhno-uspet-za-30-dnej","2026-03-25T09:35:43.649Z","2026-05-27T09:11:19.129Z","2026-05-27T09:11:19.211Z",{"id":68,"documentId":69,"title":70,"date":71,"description":9,"order":23,"slug":72,"showOnMainPage":12,"createdAt":73,"updatedAt":74,"publishedAt":75,"locale":16},135,"px232j10z8907syoldwzbqnw","Почему рынку в 2026 году нужен не статус ИТ-компании, а доказуемый продукт","2026-03-27","pochemu-v-2026-godu-vazhen-ne-status-it-kompanii-a-realnyj-produkt","2026-03-27T15:41:14.276Z","2026-05-27T09:11:04.501Z","2026-05-27T09:11:04.562Z",{"id":77,"documentId":78,"title":79,"date":80,"description":9,"order":23,"slug":81,"showOnMainPage":12,"createdAt":82,"updatedAt":83,"publishedAt":84,"locale":16},430,"gbefdj7617jkuhdg2uiw6ifn","Сколько стоит разработка MVP в 2026","2026-03-26","stoimost-razrabotki-mvp-v-2026-godu","2026-03-27T16:29:20.000Z","2026-09-23T22:15:22.300Z","2026-09-23T22:15:22.361Z",{"id":86,"documentId":87,"title":88,"date":89,"description":9,"order":23,"slug":90,"showOnMainPage":12,"createdAt":91,"updatedAt":92,"publishedAt":93,"locale":16},134,"rl2huy6muohp1clo4cvg00zz","Рынок готовых платформ попадает в зону давления","2026-03-31","rynok-gotovyh-platform-pod-davleniem","2026-03-31T16:00:40.688Z","2026-05-27T09:10:09.516Z","2026-05-27T09:10:09.576Z",{"id":95,"documentId":96,"title":97,"date":98,"description":99,"order":33,"slug":100,"showOnMainPage":12,"createdAt":101,"updatedAt":102,"publishedAt":103,"locale":16},433,"slc42o5s3klmtwkvvzyjfji5","Забрали сразу две награды на премии «Золотое приложение»","2026-04-01","Две награды. Два разных проекта. Два сильных результата.\n","zolotoe-prilozhenie","2026-04-03T07:26:17.360Z","2026-09-24T08:05:25.947Z","2026-09-24T08:05:26.013Z",{"id":105,"documentId":106,"title":107,"date":108,"description":9,"order":23,"slug":109,"showOnMainPage":12,"createdAt":110,"updatedAt":111,"publishedAt":112,"locale":16},156,"qu6e4sgiy5zjcz548x1mija8","Почему EdTech-проектам рискованно строиться на чужой платформе","2026-04-10","riski-edtech-proektov-na-chuzhikh-platformakh","2026-04-10T14:54:48.320Z","2026-05-27T11:20:55.448Z","2026-05-27T11:20:55.519Z",{"id":114,"documentId":115,"title":116,"date":117,"description":9,"order":118,"slug":119,"showOnMainPage":12,"createdAt":120,"updatedAt":121,"publishedAt":122,"locale":16},195,"ersgie5e85wpniq47fuqbstp","Почему дешевые обходные схемы становятся дорогими","2026-04-14",300,"pochemu-deshevye-shemy-obkhoda-privodyat-k-vysokim-zatratam","2026-04-14T13:00:12.314Z","2026-07-30T14:50:35.406Z","2026-07-30T14:50:35.453Z",{"id":124,"documentId":125,"title":126,"date":127,"description":9,"order":23,"slug":128,"showOnMainPage":12,"createdAt":129,"updatedAt":130,"publishedAt":131,"locale":16},153,"g5b2wxj7re10lyayjsqbpd9j","Как понять, чем компания реально управляет в своем ИТ-продукте","2026-04-15","kak-proverit-upravlenie-it-produktom-v-kompanii","2026-04-15T15:10:47.274Z","2026-05-27T11:14:52.446Z","2026-05-27T11:14:52.512Z",{"id":133,"documentId":134,"title":135,"date":136,"description":9,"order":23,"slug":137,"showOnMainPage":12,"createdAt":138,"updatedAt":139,"publishedAt":140,"locale":16},155,"iemgcvwws2lyzyz8qref9ebq","Где заканчивается внедрение и начинается собственный продукт","2026-04-23","vnedrenie-korobochnyh-resheniy-i-sobstvennyy-produkt-dlya-biznesa","2026-04-23T12:45:27.057Z","2026-05-27T11:20:11.958Z","2026-05-27T11:20:12.051Z",{"id":142,"documentId":143,"title":144,"date":145,"description":9,"order":23,"slug":146,"showOnMainPage":12,"createdAt":147,"updatedAt":148,"publishedAt":149,"locale":16},151,"ebwajdbr53mo5mno9n9hy44c","AI-агенты в продакшене: экономия или новая статья расходов","2026-04-29","ai-agenty-v-biznese","2026-04-29T15:00:44.149Z","2026-05-27T11:12:37.292Z","2026-05-27T11:12:37.378Z",{"id":151,"documentId":152,"title":153,"date":154,"description":9,"order":23,"slug":155,"showOnMainPage":12,"createdAt":156,"updatedAt":157,"publishedAt":158,"locale":16},415,"h713429nv5nf42hksety3udo","Как выбрать подрядчика по разработке: чек-лист от компании с 280+ проектами","2026-05-12","kak-vybrat-podryadchika-po-razrabotke","2026-05-12T14:27:43.934Z","2026-09-23T20:19:18.515Z","2026-09-23T20:19:18.584Z",{"id":160,"documentId":161,"title":162,"date":163,"description":9,"order":23,"slug":164,"showOnMainPage":12,"createdAt":165,"updatedAt":166,"publishedAt":167,"locale":16},420,"fleu8iabwalh7dwbfkxuew4p","Flutter в продакшене: где появляется экономия","2026-06-23","flutter-v-razrabotke-ekonomiya-na-mobilnykh-prilozheniyakh","2026-06-23T13:14:39.410Z","2026-09-23T20:40:37.837Z","2026-09-23T20:40:37.893Z",{"id":169,"documentId":170,"title":171,"date":172,"description":9,"order":23,"slug":173,"showOnMainPage":12,"createdAt":174,"updatedAt":175,"publishedAt":176,"locale":16},421,"g0rbfiyvtlpoh0wlalq8dsyp","Когда бизнесу пора переходить от идеи к MVP","2026-07-03","kogda-biznesu-stoit-perehodit-ot-idei-k-mvp","2026-07-03T14:26:20.648Z","2026-09-23T20:42:23.321Z","2026-09-23T20:42:23.381Z",{"id":178,"documentId":179,"title":180,"date":181,"description":9,"order":118,"slug":182,"showOnMainPage":12,"createdAt":183,"updatedAt":184,"publishedAt":185,"locale":16},423,"txt60k65mnql530q38z0path","Когда онлайн-школе пора менять стандартную LMS\n","2026-07-13","kogda-onlajn-shkole-stoit-smenit-standartnuyu-lms","2026-07-13T14:45:31.490Z","2026-09-23T20:55:07.323Z","2026-09-23T20:55:07.429Z",{"id":187,"documentId":188,"title":189,"date":190,"description":9,"order":19,"slug":191,"showOnMainPage":12,"createdAt":192,"updatedAt":193,"publishedAt":194,"locale":16},338,"b82vt0dmoot3vi0yo5y3j435","Как посчитать бюджет RAG и не переплатить за модель","2026-07-14","kak-rasschitat-byudzet-rag-i-izbezhat-lishnikh-zatrat","2026-07-14T12:01:48.568Z","2026-09-17T22:42:53.015Z","2026-09-17T22:42:53.076Z",{"id":196,"documentId":197,"title":198,"date":199,"description":9,"order":23,"slug":200,"showOnMainPage":12,"createdAt":201,"updatedAt":202,"publishedAt":203,"locale":16},424,"jknljxwtbcr6umo95k5onfcq","Мы выбрали для EdTech ту же технологию, что и Pornhub. Потому что тормоза всем мешают","2026-07-17","-tekhnologiya-pornhub-dlya-edtech","2026-07-17T13:13:00.710Z","2026-09-23T21:53:05.719Z","2026-09-23T21:53:05.776Z",{"id":205,"documentId":206,"title":207,"date":208,"description":9,"order":209,"slug":210,"showOnMainPage":12,"createdAt":211,"updatedAt":212,"publishedAt":213,"locale":16},297,"yazmsp31df1ggv8saaix8dkd","«Тут почти стандартно, пара нюансов»: как эта фраза убивает экономику подписки\n","2026-07-22",1,"-tut-pochti-standartno-para-nyuansov-kak-eta-fraza-ubivaet-ekonomiku-podpiski","2026-07-22T11:46:36.625Z","2026-09-13T23:21:38.544Z","2026-09-13T23:21:38.602Z",{"id":215,"documentId":216,"title":217,"date":218,"description":9,"order":23,"slug":219,"showOnMainPage":12,"createdAt":220,"updatedAt":221,"publishedAt":222,"locale":16},419,"gnlxdx5dl5wgdemt91xm57j9","4 продукта на NestJS: где стек сработал, а где мы ушли на Go\n","2026-07-23","-produkty-na-nestjs-i-go","2026-07-23T15:10:53.621Z","2026-09-23T20:38:02.925Z","2026-09-23T20:38:02.985Z",{"id":224,"documentId":225,"title":226,"date":227,"description":9,"order":23,"slug":228,"showOnMainPage":12,"createdAt":229,"updatedAt":230,"publishedAt":231,"locale":16},352,"nlh8oehrwqcexi2atoqykh3s","Как мы для онлайн-школы выбирали между коробкой, конструктором и стройкой с нуля — и что из этого выходит по деньгам\n","2026-07-27","-vybor-mezhdu-korobkoy-konstruktorom-i-stroykoy-onlayn-shkoly","2026-07-27T15:09:01.113Z","2026-09-20T16:12:21.034Z","2026-09-20T16:12:21.186Z",{"id":233,"documentId":234,"title":235,"date":236,"description":9,"order":23,"slug":237,"showOnMainPage":12,"createdAt":238,"updatedAt":239,"publishedAt":240,"locale":16},353,"u6ilvydbctqytrf7heo2scno","Кнопка «Войти» за миллионы: когда бизнесу правда нужна своя ВКС\n","2026-07-28","-knopka-voiti-za-milliony-kogda-biznesu-pravda-nuzhna-svoya-vks","2026-07-28T13:47:41.153Z","2026-09-20T19:43:08.311Z","2026-09-20T19:43:08.377Z",{"id":242,"documentId":243,"title":244,"date":245,"description":9,"order":246,"slug":247,"showOnMainPage":12,"createdAt":248,"updatedAt":249,"publishedAt":250,"locale":16},407,"dcenjtj61ta9j4xssc9be8n4","AI-чатбот за 2 недели: что проверить до сметы на 2 млн","2026-07-30",3,"-ai-chatbot-chto-proverit-pered-razrabotkoy","2026-07-30T13:23:01.866Z","2026-09-23T19:27:11.722Z","2026-09-23T19:27:11.796Z",{"id":252,"documentId":253,"title":254,"date":255,"description":9,"order":209,"slug":256,"showOnMainPage":12,"createdAt":257,"updatedAt":258,"publishedAt":259,"locale":16},303,"k77qvgjbwvomrrx4tn51benn","Почему похожие интернет-магазины отличаются по стоимости в несколько раз","2026-07-31","-pochemu-pohozhie-internet-magaziny-otlichayutsya-po-stoimosti-v-neskolko-raz","2026-07-31T16:11:46.552Z","2026-09-14T11:00:11.859Z","2026-09-14T11:00:11.926Z",{"id":261,"documentId":262,"title":263,"date":264,"description":9,"order":23,"slug":265,"showOnMainPage":12,"createdAt":266,"updatedAt":267,"publishedAt":268,"locale":16},416,"myvt92baeeu5v8avnec7dqxv","Кнопка стала красивее, товара всё равно нет: почему редизайн не спасает продажи в e-commerce","2026-08-03","-redizayn-interfeysa-v-e-commerce","2026-08-03T15:04:24.695Z","2026-09-23T20:21:32.170Z","2026-09-23T20:21:32.245Z",{"id":270,"documentId":271,"title":272,"date":273,"description":9,"order":23,"slug":274,"showOnMainPage":12,"createdAt":275,"updatedAt":276,"publishedAt":277,"locale":16},422,"a4ckp7tbgmtv0utmia4b808l","Новая роль — новый проект: когда личные кабинеты пора собирать в экосистему","2026-08-04","-lichnye-kabineti-v-ekosisteme-optimizatsiya-protsessov","2026-08-04T14:13:59.695Z","2026-09-23T20:51:19.975Z","2026-09-23T20:51:20.033Z",{"id":279,"documentId":280,"title":281,"date":282,"description":9,"order":246,"slug":283,"showOnMainPage":12,"createdAt":284,"updatedAt":285,"publishedAt":286,"locale":16},413,"k14jk3d9zgf69tmumdlcoh2f","Сколько стоит AI после релиза: токены, контекст, хранение и контроль качества","2026-08-05","-stoimost-ai-posle-reliza-tokeny-kontekst-khranenie-i-kontrol-kachestva","2026-08-05T17:49:43.277Z","2026-09-23T19:57:02.474Z","2026-09-23T19:57:02.537Z",{"id":288,"documentId":289,"title":290,"date":291,"description":9,"order":19,"slug":292,"showOnMainPage":12,"createdAt":293,"updatedAt":294,"publishedAt":295,"locale":16},339,"jdz6gl00sz72z0egu84yf8cn","16 млн за полгода: аутсорс или штат в 2026 году","2026-08-06","-autsorsing-ili-shtat-sravnenie-zatrat","2026-08-06T17:30:36.209Z","2026-09-17T22:44:36.382Z","2026-09-17T22:44:36.451Z",{"id":297,"documentId":298,"title":299,"date":300,"description":9,"order":23,"slug":301,"showOnMainPage":12,"createdAt":302,"updatedAt":302,"publishedAt":303,"locale":16},210,"imbbxnbft75duehba72yjk23","Любая правка — мини-проект: 6 признаков, что корпоративный сайт пора пересобирать","2026-08-10","-priznaki-neobhodimosti-peresborki-korporativnogo-sajta","2026-08-11T23:47:18.300Z","2026-08-11T23:47:18.367Z",{"id":305,"documentId":306,"title":307,"date":308,"description":9,"order":309,"slug":310,"showOnMainPage":12,"createdAt":311,"updatedAt":312,"publishedAt":313,"locale":16},351,"heaihqewz8dlu9x3ninbdiqq","GetCourse, iSpring или своя LMS: когда онлайн-школе нужна отдельная платформа","2026-08-11",5,"-getcourse-ispring-ili-svoya-lms-vybor-platformy-dlya-onlayn-shkoly","2026-08-11T23:59:00.384Z","2026-09-20T15:59:44.965Z","2026-09-20T15:59:45.057Z",{"id":315,"documentId":316,"title":317,"date":318,"description":9,"order":319,"slug":320,"showOnMainPage":12,"createdAt":321,"updatedAt":322,"publishedAt":323,"locale":16},332,"wcg59mzuex1spvgeegxdhn63","В дашборде план выполнен, в кассе денег нет: почему CRM показывает несколько версий бизнеса","2026-08-12",4,"-pochemu-crm-pokazyvaet-raznye-versii-biznesa","2026-08-12T22:13:44.432Z","2026-09-17T22:01:25.093Z","2026-09-17T22:01:25.160Z",{"id":325,"documentId":326,"title":327,"date":328,"description":9,"order":19,"slug":329,"showOnMainPage":12,"createdAt":330,"updatedAt":331,"publishedAt":332,"locale":16},350,"mpxer9aw8jjq44rby7j47pwi","Стоимость разработки интеграции — API, CRM, 1С и внешние сервисы\n","2026-08-13","stoimost-razrabotki-integracii-api-crm-1s-i-vneshnie-servisy","2026-08-18T10:36:53.371Z","2026-09-20T15:45:50.010Z","2026-09-20T15:45:50.144Z",{"id":334,"documentId":335,"title":336,"date":337,"description":9,"order":209,"slug":338,"showOnMainPage":12,"createdAt":339,"updatedAt":340,"publishedAt":341,"locale":16},304,"vvxg6n1kmg9y7k6143t9gm8o","1 октября в прод: что 12 платформам придётся перестроить из-за нового закона","2026-08-14","novyy-zakon-dlya-platform-12-servisov","2026-08-18T10:59:43.550Z","2026-09-14T12:10:46.768Z","2026-09-14T12:10:46.844Z",{"id":343,"documentId":344,"title":345,"date":346,"description":9,"order":209,"slug":347,"showOnMainPage":12,"createdAt":348,"updatedAt":349,"publishedAt":350,"locale":16},305,"z5gc803xpd7jutuksh8q0er3","97% компаний создают учебный контент сами: следующий дефицит EdTech — подготовка преподавателей","2026-08-17","97-kompaniy-sozdayut-uchebnyy-kontent-sami-podgotovka-prepodavateley","2026-08-18T11:17:37.963Z","2026-09-14T12:11:38.758Z","2026-09-14T12:11:38.812Z",{"id":352,"documentId":353,"title":354,"date":355,"description":9,"order":23,"slug":356,"showOnMainPage":12,"createdAt":357,"updatedAt":358,"publishedAt":359,"locale":16},309,"fm5glwnple0jwjkmo8gvldan","Сколько стоит мобильное приложение в 2026 году: почему сметы отличаются втрое\n","2026-08-18","stoimost-razrabotki-mobilnogo-prilozheniya-2026-smeta","2026-08-18T11:31:22.195Z","2026-09-14T12:19:58.030Z","2026-09-14T12:19:58.102Z",{"id":361,"documentId":362,"title":363,"date":364,"description":9,"order":209,"slug":365,"showOnMainPage":12,"createdAt":366,"updatedAt":367,"publishedAt":368,"locale":16},306,"x28rh3zoj50o59tcgvzve415","AI-агенты внутри компании: где нужны доступы, ограничения и человек на проверке","2026-08-19","ai-agenty-v-kompanii-dostupy-i-kontrol","2026-08-18T14:05:29.647Z","2026-09-14T12:13:14.538Z","2026-09-14T12:13:14.626Z",{"id":370,"documentId":371,"title":372,"date":373,"description":9,"order":209,"slug":374,"showOnMainPage":12,"createdAt":375,"updatedAt":376,"publishedAt":377,"locale":16},391,"cs2j0db6ed7l2zglni926s05","Как проверить AI-навык кандидата: тестовое, критерии и красные флаги","2026-08-21","proverka-ai-navyka-kandidata-testovoe-kriterii","2026-08-19T13:56:11.468Z","2026-09-23T11:35:54.252Z","2026-09-23T11:35:54.307Z",{"id":379,"documentId":380,"title":381,"date":382,"description":9,"order":209,"slug":383,"showOnMainPage":12,"createdAt":384,"updatedAt":385,"publishedAt":386,"locale":16},427,"qh3qmzfp2ceif4xf3tdoi9ap","Один товар, три цены и очередь согласований: чем B2B-маркетплейс отличается от интернет-магазина","2026-08-26","b2b-marketpleys-otlichiya-ot-internet-magazina","2026-08-26T09:04:07.905Z","2026-09-23T22:05:30.026Z","2026-09-23T22:05:30.108Z",{"id":388,"documentId":389,"title":390,"date":391,"description":9,"order":209,"slug":392,"showOnMainPage":12,"createdAt":393,"updatedAt":394,"publishedAt":395,"locale":16},393,"w8n42241rgavwtld0dn1fvcl","Один статус «готовится» запускает цепочку потерь: где ломается экономика приложения доставки","2026-08-27","gde-prilozhenie-sedaet-marzhu","2026-08-26T14:56:30.346Z","2026-09-23T11:40:21.513Z","2026-09-23T11:40:21.581Z",{"id":397,"documentId":398,"title":399,"date":400,"description":9,"order":209,"slug":401,"showOnMainPage":12,"createdAt":402,"updatedAt":403,"publishedAt":404,"locale":16},336,"xujodhmvw1zxpvpcqahtklmc","Когда D2C становится выгоднее маркетплейса: расчёт по заказам\n","2026-08-28","kogda-d2c-vygodnee-marketpleysa-raschet-po-zakazam","2026-08-27T14:24:12.532Z","2026-09-17T22:22:16.654Z","2026-09-17T22:22:16.749Z",{"id":406,"documentId":407,"title":408,"date":409,"description":9,"order":209,"slug":410,"showOnMainPage":12,"createdAt":411,"updatedAt":412,"publishedAt":413,"locale":16},310,"zm2xqct6baoxjz7jsy605ztw","Duolingo прибавил 23% ежедневной аудитории. Что интернет-магазин может забрать у совы\n","2026-08-31","duolingo-23-rosta-gamifikaciya-dlya-magazina","2026-08-31T08:37:31.518Z","2026-09-14T12:31:11.576Z","2026-09-14T12:31:11.708Z",{"id":415,"documentId":416,"title":417,"date":418,"description":9,"order":209,"slug":419,"showOnMainPage":12,"createdAt":420,"updatedAt":421,"publishedAt":422,"locale":16},394,"lb4x4pfodc0sbnv9umz0b32a","Закрыл ноутбук, открыл телефон — и начал заново: где теряется контекст пользователя\n","2026-09-01","gde-teryaetsya-kontekst-polzovatelya","2026-08-31T12:47:31.448Z","2026-09-23T11:44:42.622Z","2026-09-23T11:44:42.688Z",{"id":424,"documentId":425,"title":426,"date":427,"description":9,"order":209,"slug":428,"showOnMainPage":12,"createdAt":429,"updatedAt":430,"publishedAt":431,"locale":16},425,"pbpm1u7r2yocuobuig7aows1","После оффера оценка кандидата пропадает: как связать найм, обучение и эффективность","2026-09-02","kak-svyazat-naym-obuchenie-i-effektivnost","2026-09-02T08:28:55.851Z","2026-09-23T21:57:01.056Z","2026-09-23T21:57:01.114Z",{"id":433,"documentId":434,"title":435,"date":436,"description":9,"order":209,"slug":437,"showOnMainPage":12,"createdAt":438,"updatedAt":439,"publishedAt":440,"locale":16},396,"xigmp6s4a3rypjza7nyd2jyu","AI-агент оформляет заказ: готов ли интернет-магазин отдать ему каталог, остатки и оплату","2026-09-03","ai-agent-oformlyaet-zakaz-katalog-ostatki-oplata","2026-09-03T08:28:16.365Z","2026-09-23T12:03:44.917Z","2026-09-23T12:03:45.001Z",{"id":442,"documentId":443,"title":444,"date":445,"description":9,"order":209,"slug":446,"showOnMainPage":12,"createdAt":447,"updatedAt":448,"publishedAt":449,"locale":16},397,"ono02gti54gmgguq55q3eqfl","Мобильная LMS: как понять, что отдельному приложению есть работа\n","2026-09-04","mobilnaya-lms-otdelnoe-prilozhenie","2026-09-03T14:02:36.259Z","2026-09-23T12:05:36.030Z","2026-09-23T12:05:36.109Z",{"id":451,"documentId":452,"title":453,"date":454,"description":9,"order":209,"slug":455,"showOnMainPage":12,"createdAt":456,"updatedAt":457,"publishedAt":458,"locale":16},428,"tia92neitxsmtmvtu3k6ox2x","Пилот с планом на рост: как подготовить цифровой продукт к масштабированию","2026-09-07","pilot-s-planom-na-rost-masshtabirovanie","2026-09-07T13:11:01.617Z","2026-09-23T22:07:55.075Z","2026-09-23T22:07:55.128Z",{"id":460,"documentId":461,"title":462,"date":463,"description":9,"order":209,"slug":464,"showOnMainPage":12,"createdAt":465,"updatedAt":466,"publishedAt":467,"locale":16},429,"mfzw1oxq307h7hldor2v71hh","Реклама сработала, сайт лёг: как проверить предел системы до пикового трафика","2026-09-08","reklama-srabotala-sayt-lyog-pikovyy-trafik","2026-09-08T11:25:13.641Z","2026-09-23T22:12:54.085Z","2026-09-23T22:12:54.180Z",{"id":469,"documentId":470,"title":471,"date":472,"description":9,"order":209,"slug":473,"showOnMainPage":12,"createdAt":474,"updatedAt":475,"publishedAt":476,"locale":16},400,"dqf6p9puiqfz6u2djss216vw","Баллы списались дважды: где ломается программа лояльности под нагрузкой","2026-09-09","programmnaya-loyalnost-pod-nagruzkoy","2026-09-08T11:39:39.209Z","2026-09-23T12:15:38.943Z","2026-09-23T12:15:39.016Z",{"id":478,"documentId":479,"title":480,"date":481,"description":9,"order":209,"slug":482,"showOnMainPage":12,"createdAt":483,"updatedAt":484,"publishedAt":485,"locale":16},411,"zttjv8sbmge05zro1ok576xe","Что IT-аудит находит в проекте перед релизом","2026-09-11","it-audit-pered-relizom","2026-09-08T11:52:07.373Z","2026-09-23T19:53:41.550Z","2026-09-23T19:53:41.617Z",{"id":487,"documentId":488,"title":489,"date":481,"description":9,"order":23,"slug":490,"showOnMainPage":12,"createdAt":491,"updatedAt":491,"publishedAt":492,"locale":16},281,"ggdl1zmuuohkn3ubgxqu5wdz","Этапы разработки сайта: 7 контрольных точек от идеи до запуска","etapy-razrabotki-sayta-ot-idei-do-zapuska","2026-09-11T14:21:51.168Z","2026-09-11T14:21:51.261Z",{"id":494,"documentId":495,"title":496,"date":497,"description":9,"order":23,"slug":498,"showOnMainPage":12,"createdAt":499,"updatedAt":499,"publishedAt":500,"locale":16},299,"vc9i1ztfpn2yrd5nx782zp3z","Этапы разработки дизайна сайта: как создать привлекательный и функциональный веб-дизайн","2026-09-13","etapy-razrabotki-dizayna-sayta-kak-sozdat-privlekatelnyy-i-funktsionalnyy-veb-dizayn","2026-09-13T23:38:47.063Z","2026-09-13T23:38:47.130Z",{"id":502,"documentId":503,"title":504,"date":505,"description":9,"order":23,"slug":506,"showOnMainPage":12,"createdAt":507,"updatedAt":507,"publishedAt":508,"locale":16},301,"mj85w3jsdizxt9gpk1ngf564","Сколько стоит тестирование приложения и что влияет на цену","2026-09-14","skolko-stoit-testirovanie-prilozheniya-i-chto-vliyaet-na-tsenu","2026-09-14T09:26:29.005Z","2026-09-14T09:26:29.084Z",{"id":510,"documentId":511,"title":512,"date":481,"description":9,"order":23,"slug":513,"showOnMainPage":12,"createdAt":514,"updatedAt":515,"publishedAt":516,"locale":16},311,"v3w411p7i1i1btgcmn7pwxl7","Цена уже изменилась, остаток ещё старый: где ломается единый кабинет селлера","edinyy-kabinet-sellera-dlya-marketpleysov","2026-09-11T14:35:28.405Z","2026-09-14T15:33:57.800Z","2026-09-14T15:33:57.871Z",{"id":518,"documentId":519,"title":520,"date":505,"description":9,"order":23,"slug":521,"showOnMainPage":12,"createdAt":522,"updatedAt":522,"publishedAt":523,"locale":16},313,"yv49ig9l4j8vggzenf8rdxm3","Этапы управления проектом по разработке сайта или приложения","etapy-upravleniya-proektom-po-razrabotke-sayta-ili-prilozheniya","2026-09-14T15:36:41.687Z","2026-09-14T15:36:41.763Z",{"id":525,"documentId":526,"title":527,"date":505,"description":9,"order":23,"slug":528,"showOnMainPage":12,"createdAt":529,"updatedAt":530,"publishedAt":531,"locale":16},403,"nze9zg24dgc33oo464j2wo8v","Как искусственный интеллект меняет бизнес-процессы: от автоматизации до анализа данных","kak-iskusstvennyy-intellekt-menyaet-biznes-protsessy-ot-avtomatizatsii-do-analiza-dannykh","2026-09-14T21:35:44.550Z","2026-09-23T12:23:07.684Z","2026-09-23T12:23:07.761Z",{"id":533,"documentId":534,"title":535,"date":536,"description":9,"order":246,"slug":537,"showOnMainPage":12,"createdAt":538,"updatedAt":538,"publishedAt":539,"locale":16},317,"ekx4n93yajvm1hk8iqyzw4ju","Tinder обновил рекомендации. Почему маркетплейсу мало фильтров и сортировки","2026-09-15","-obnovleniya-tinder-kak-marketpleys-uluchshaet-rekomendatsii-i-sortirovku","2026-09-15T16:47:04.947Z","2026-09-15T16:47:05.044Z",{"id":541,"documentId":542,"title":543,"date":544,"description":9,"order":209,"slug":545,"showOnMainPage":12,"createdAt":546,"updatedAt":547,"publishedAt":548,"locale":16},321,"k6ijlgqkm5unejznzmeyo4vg","Интеграция с маркетплейсами и ERP: как синхронизировать заказы, статусы и остатки\n","2026-09-16","integraciya-marketpleysov-i-erp","2026-09-16T11:08:28.748Z","2026-09-16T11:31:18.295Z","2026-09-16T11:31:18.405Z",{"id":550,"documentId":551,"title":552,"date":553,"description":9,"order":23,"slug":554,"showOnMainPage":12,"createdAt":555,"updatedAt":555,"publishedAt":556,"locale":16},325,"zlz1zsbmf9t62lq9upjoh71o","Как правильно оценить разработку сайта и приложения\n","2026-09-17","kak-pravilno-otsenit-razrabotku-sayta-i-prilozheniya","2026-09-17T10:47:34.140Z","2026-09-17T10:47:34.227Z",{"id":558,"documentId":559,"title":560,"date":553,"description":9,"order":23,"slug":561,"showOnMainPage":12,"createdAt":562,"updatedAt":563,"publishedAt":564,"locale":16},330,"hk18zy8rgkffyo6py89yhijb","Как выбрать платформу для онлайн-школы","kak-vybrat-platformu-dlya-onlajn-shkoly","2026-09-17T11:02:32.852Z","2026-09-17T13:50:45.671Z","2026-09-17T13:50:45.748Z",{"id":566,"documentId":567,"title":568,"date":553,"description":9,"order":209,"slug":569,"showOnMainPage":12,"createdAt":570,"updatedAt":571,"publishedAt":572,"locale":16},331,"m3jg0ix87senqmdibgb089zk","Настройка резервного копирования: как проверить восстановление сервиса\n","rezervnoe-kopirovanie-proverka-vosstanovleniya","2026-09-17T08:38:21.082Z","2026-09-17T14:08:08.647Z","2026-09-17T14:08:08.708Z",{"id":574,"documentId":575,"title":576,"date":577,"description":9,"order":209,"slug":578,"showOnMainPage":12,"createdAt":579,"updatedAt":579,"publishedAt":580,"locale":16},343,"c4qw6xwuehgz8lo5zyabldkb","Платформа обучения сотрудников: почему курс заканчивается раньше рабочего результата","2026-09-18","platforma-obucheniya-sotrudnikov-rabochiy-rezultat","2026-09-18T10:17:38.082Z","2026-09-18T10:17:38.173Z",{"id":582,"documentId":583,"title":584,"date":577,"description":9,"order":209,"slug":585,"showOnMainPage":12,"createdAt":586,"updatedAt":587,"publishedAt":588,"locale":16},361,"fbzwk8k4u0jwlm6l2b9o2jr3","Как превращать результаты пользовательских интервью в задачи для бэклога","rezultaty-polzovatelskih-intervyu-v-zadachi-backloga","2026-09-18T13:05:14.859Z","2026-09-21T14:42:31.491Z","2026-09-21T14:42:31.557Z",{"id":590,"documentId":591,"title":592,"date":593,"description":9,"order":23,"slug":594,"showOnMainPage":12,"createdAt":595,"updatedAt":595,"publishedAt":596,"locale":16},348,"vhvm4rgi4utkvdl5lsn236cb","Омниканальная платформа: как объединить клиентов, заказы и остатки","2026-09-20","omnikanalnaya-platforma-kak-obedinit-klientov-zakazy-i-ostatki","2026-09-20T15:23:08.467Z","2026-09-20T15:23:08.536Z",{"id":598,"documentId":599,"title":600,"date":601,"description":9,"order":209,"slug":602,"showOnMainPage":12,"createdAt":603,"updatedAt":604,"publishedAt":605,"locale":16},360,"idkoix18t80we76tz6g5li5g","Как проектировать редкие пользовательские сценарии в цифровом продукте","2026-09-21","redkie-polzovatelskie-scenarii-v-cifrovom-produkte","2026-09-21T11:15:59.442Z","2026-09-21T14:12:59.342Z","2026-09-21T14:12:59.415Z",{"id":607,"documentId":608,"title":609,"date":610,"description":611,"order":33,"slug":612,"showOnMainPage":12,"createdAt":613,"updatedAt":614,"publishedAt":615,"locale":16},365,"fgve6bjyd9co2ti7cn1gr5bv","Kazan Digital Week 2025","2025-09-17","b","media-2","2026-03-06T10:35:30.810Z","2026-09-21T16:06:41.714Z","2026-09-21T16:06:41.805Z",{"id":617,"documentId":618,"title":619,"date":620,"description":9,"order":209,"slug":621,"showOnMainPage":12,"createdAt":622,"updatedAt":623,"publishedAt":624,"locale":16},368,"ssfnxded1v20ng7yti5ngkbt","Аудит мобильного приложения: как найти причины сбоев, медленной работы и тяжёлых обновлений","2026-09-22","audit-mobilnogo-prilozheniya-sboyy-medlennaya-rabota","2026-09-22T07:37:24.514Z","2026-09-22T10:59:13.656Z","2026-09-22T10:59:13.714Z",{"id":626,"documentId":627,"title":628,"date":620,"description":9,"order":10,"slug":629,"showOnMainPage":12,"createdAt":630,"updatedAt":631,"publishedAt":632,"locale":16},382,"fr3j1duys4bku4syv0v3txb0","Как проверить, находят ли пользователи новую функцию после релиза","funkciya-vypushchena-polzovateli-ne-nashli-posle-reliza","2026-09-22T08:17:57.565Z","2026-09-22T13:27:28.606Z","2026-09-22T13:27:28.659Z",{"id":634,"documentId":635,"title":636,"date":637,"description":9,"order":23,"slug":638,"showOnMainPage":12,"createdAt":639,"updatedAt":640,"publishedAt":641,"locale":16},389,"wpw3ph9pm0j2gi5qq2d9zb32","Интеграция LMS и BI: события, метрики и роли доступа","2026-09-23","integraciya-lms-i-bi-sobytiya-metriki-roli","2026-09-23T07:35:31.275Z","2026-09-23T09:36:31.369Z","2026-09-23T09:36:31.476Z",{"id":643,"documentId":644,"title":645,"date":637,"description":9,"order":10,"slug":646,"showOnMainPage":12,"createdAt":647,"updatedAt":648,"publishedAt":649,"locale":16},405,"x98ekbdd625a0mr6v48wtojn","Тарифы, лимиты и пробный период в SaaS: что заложить в архитектуру до запуска","tarify-limity-probnyy-period-saas","2026-09-23T07:34:07.671Z","2026-09-23T13:29:13.000Z","2026-09-23T13:29:13.071Z",{"id":651,"documentId":652,"title":653,"date":654,"description":9,"order":23,"slug":655,"showOnMainPage":12,"createdAt":656,"updatedAt":656,"publishedAt":657,"locale":16},436,"t8fgwkzme6nbtkbfjww9i7zs","Автоматизация возвратов: как связать заявку, логистику, склад и выплату","2026-09-24","avtomatizatsiya-vozvratov-kak-svyazat-zayavku-logistiku-sklad-i-vyplatu","2026-09-24T10:22:57.802Z","2026-09-24T10:22:57.858Z",{"id":659,"documentId":660,"title":661,"date":654,"description":9,"order":10,"slug":662,"showOnMainPage":12,"createdAt":663,"updatedAt":664,"publishedAt":665,"locale":16},437,"e0kn9y3oq7pxqrub20a1n9kp","Требования к доступности цифрового продукта до начала разработки","trebovaniya-k-dostupnosti-do-nachala-razrabotki","2026-09-24T08:14:07.009Z","2026-09-24T10:59:51.769Z","2026-09-24T10:59:51.832Z",{"id":667,"documentId":668,"title":669,"date":654,"description":9,"order":23,"slug":670,"showOnMainPage":12,"createdAt":671,"updatedAt":671,"publishedAt":672,"locale":16},439,"b861gej3prtodznj3bb1y78f","Интеграция с WMS: как синхронизировать резервы, остатки и отгрузки","integratsiya-s-wms-kak-sinkhronizirovat-rezervy-ostatki-i-otgruzki","2026-09-24T12:23:25.584Z","2026-09-24T12:23:25.649Z",{"id":674,"documentId":675,"title":676,"date":654,"description":9,"order":23,"slug":677,"showOnMainPage":12,"createdAt":678,"updatedAt":679,"publishedAt":680,"locale":16},443,"rexo04uqb7qs9p7vie0ldmd8","19 несогласованных действий AI-агентов: как тестировать модели с доступом к интернету\n","testirovanie-ai-agentov-s-dostupom-k-internetu","2026-09-24T13:03:18.749Z","2026-09-24T13:04:17.309Z","2026-09-24T13:04:17.381Z",{"id":682,"documentId":683,"title":684,"date":553,"description":9,"order":209,"slug":685,"showOnMainPage":12,"createdAt":686,"updatedAt":687,"publishedAt":688,"locale":16},444,"n00161wjkx4xvvrj4cnrf3hg","Масштабирование веб-приложения: 5 признаков архитектурного предела\n","masshtabirovanie-veb-prilozheniya-arhitekturnyy-predel","2026-09-17T08:36:56.533Z","2026-09-24T19:02:35.882Z","2026-09-24T19:02:35.960Z",{"id":690,"documentId":691,"title":692,"date":8,"description":9,"order":23,"slug":693,"showOnMainPage":12,"createdAt":694,"updatedAt":694,"publishedAt":695,"locale":16},447,"aw0l78ewhaow4drvtb8xojs6","Аудит интернет-магазина перед ростом: производительность, интеграции и точки потери заказов","audit-internet-magazina-pered-rostom-proizvoditelnost-integratsii-i-tochki-poteri-zakazov","2026-09-25T09:30:00.915Z","2026-09-25T09:30:00.980Z",{"id":5,"documentId":6,"title":7,"date":8,"description":9,"order":10,"slug":11,"showOnMainPage":12,"createdAt":13,"updatedAt":14,"publishedAt":15,"locale":16},[],{"id":699,"documentId":700,"title":701,"slug":702,"order":23,"createdAt":703,"updatedAt":703,"publishedAt":704,"locale":16,"media":705,"localizations":727},15,"w2syds6h6g6w4q901gfyrw0j","Экспертиза ","media-area-3","2026-05-27T09:11:34.563Z","2026-05-27T09:11:34.578Z",[706,707,708,709,710,711,712,713,714,715,716,717,725,726],{"id":151,"documentId":152,"title":153,"date":154,"description":9,"order":23,"slug":155,"showOnMainPage":12,"createdAt":156,"updatedAt":157,"publishedAt":158,"locale":16},{"id":270,"documentId":271,"title":272,"date":273,"description":9,"order":23,"slug":274,"showOnMainPage":12,"createdAt":275,"updatedAt":276,"publishedAt":277,"locale":16},{"id":288,"documentId":289,"title":290,"date":291,"description":9,"order":19,"slug":292,"showOnMainPage":12,"createdAt":293,"updatedAt":294,"publishedAt":295,"locale":16},{"id":379,"documentId":380,"title":381,"date":382,"description":9,"order":209,"slug":383,"showOnMainPage":12,"createdAt":384,"updatedAt":385,"publishedAt":386,"locale":16},{"id":415,"documentId":416,"title":417,"date":418,"description":9,"order":209,"slug":419,"showOnMainPage":12,"createdAt":420,"updatedAt":421,"publishedAt":422,"locale":16},{"id":424,"documentId":425,"title":426,"date":427,"description":9,"order":209,"slug":428,"showOnMainPage":12,"createdAt":429,"updatedAt":430,"publishedAt":431,"locale":16},{"id":451,"documentId":452,"title":453,"date":454,"description":9,"order":209,"slug":455,"showOnMainPage":12,"createdAt":456,"updatedAt":457,"publishedAt":458,"locale":16},{"id":460,"documentId":461,"title":462,"date":463,"description":9,"order":209,"slug":464,"showOnMainPage":12,"createdAt":465,"updatedAt":466,"publishedAt":467,"locale":16},{"id":469,"documentId":470,"title":471,"date":472,"description":9,"order":209,"slug":473,"showOnMainPage":12,"createdAt":474,"updatedAt":475,"publishedAt":476,"locale":16},{"id":478,"documentId":479,"title":480,"date":481,"description":9,"order":209,"slug":482,"showOnMainPage":12,"createdAt":483,"updatedAt":484,"publishedAt":485,"locale":16},{"id":682,"documentId":683,"title":684,"date":553,"description":9,"order":209,"slug":685,"showOnMainPage":12,"createdAt":686,"updatedAt":687,"publishedAt":688,"locale":16},{"id":718,"documentId":719,"title":720,"date":601,"description":9,"order":209,"slug":721,"showOnMainPage":12,"createdAt":722,"updatedAt":723,"publishedAt":724,"locale":16},356,"fpk51c4ejek3676dkx59luaw","Локализация цифрового продукта: что менять при выходе на новый рынок","lokalizaciya-cifrovogo-produkta-novyy-rynok","2026-09-21T11:12:00.474Z","2026-09-21T11:12:43.417Z","2026-09-21T11:12:43.477Z",{"id":617,"documentId":618,"title":619,"date":620,"description":9,"order":209,"slug":621,"showOnMainPage":12,"createdAt":622,"updatedAt":623,"publishedAt":624,"locale":16},{"id":5,"documentId":6,"title":7,"date":8,"description":9,"order":10,"slug":11,"showOnMainPage":12,"createdAt":13,"updatedAt":14,"publishedAt":15,"locale":16},[],{"id":729,"documentId":730,"name":731,"alternativeText":9,"caption":9,"width":732,"height":733,"formats":734,"hash":766,"ext":736,"mime":739,"size":767,"url":768,"previewUrl":9,"provider":769,"provider_metadata":9,"createdAt":770,"updatedAt":770,"publishedAt":771,"related":772},941,"cqmh93hvw2s4gxfglgmw6ipo","photo_2026-09-25 13.14.47.jpeg",1920,1080,{"large":735,"small":745,"medium":751,"thumbnail":758},{"ext":736,"url":737,"hash":738,"mime":739,"name":740,"path":9,"size":741,"width":742,"height":743,"sizeInBytes":744},".jpeg","https:\u002F\u002Fstrapi.qtim.pro\u002Fuploads\u002Flarge_photo_2026_09_25_13_14_47_19c000ca29.jpeg","large_photo_2026_09_25_13_14_47_19c000ca29","image\u002Fjpeg","large_photo_2026-09-25 13.14.47.jpeg",41.96,1000,563,41957,{"ext":736,"url":746,"hash":747,"mime":739,"name":748,"path":9,"size":749,"width":23,"height":487,"sizeInBytes":750},"https:\u002F\u002Fstrapi.qtim.pro\u002Fuploads\u002Fsmall_photo_2026_09_25_13_14_47_19c000ca29.jpeg","small_photo_2026_09_25_13_14_47_19c000ca29","small_photo_2026-09-25 13.14.47.jpeg",15.84,15839,{"ext":736,"url":752,"hash":753,"mime":739,"name":754,"path":9,"size":755,"width":756,"height":270,"sizeInBytes":757},"https:\u002F\u002Fstrapi.qtim.pro\u002Fuploads\u002Fmedium_photo_2026_09_25_13_14_47_19c000ca29.jpeg","medium_photo_2026_09_25_13_14_47_19c000ca29","medium_photo_2026-09-25 13.14.47.jpeg",27.74,750,27744,{"ext":736,"url":759,"hash":760,"mime":739,"name":761,"path":9,"size":762,"width":763,"height":764,"sizeInBytes":765},"https:\u002F\u002Fstrapi.qtim.pro\u002Fuploads\u002Fthumbnail_photo_2026_09_25_13_14_47_19c000ca29.jpeg","thumbnail_photo_2026_09_25_13_14_47_19c000ca29","thumbnail_photo_2026-09-25 13.14.47.jpeg",5.71,245,138,5711,"photo_2026_09_25_13_14_47_19c000ca29",94.55,"https:\u002F\u002Fstrapi.qtim.pro\u002Fuploads\u002Fphoto_2026_09_25_13_14_47_19c000ca29.jpeg","aws-s3","2026-09-25T10:41:04.260Z","2026-09-25T10:41:04.261Z",[773],{"__type":774,"id":5,"documentId":6,"title":7,"date":8,"description":9,"order":10,"slug":11,"showOnMainPage":12,"createdAt":13,"updatedAt":14,"publishedAt":15,"locale":16},"api::media.media",[776],{"__component":777,"id":778,"text":779},"media.text",412,"\u003Cp dir=\"auto\" data-pm-slice=\"1 1 []\">Таблица подходит для расчётов, разовых срезов и проверки гипотез. В некоторых процессах она постепенно получает другую роль: статус в ячейке открывает счёт, новая цена меняет заказ, доступ к диапазону показывает данные клиента. Тогда файл уже влияет на работу нескольких команд.\u003C\u002Fp>\u003Cp dir=\"auto\">Отдельная система нужна не из-за числа строк. Решение зависит от цены ошибки, сложности ролей, истории действий и интеграций вокруг процесса.\u003C\u002Fp>\u003Ch2 dir=\"auto\">Один статус меняет работу следующего человека\u003C\u002Fh2>\u003Cp>\u003Cimg src=\"https:\u002F\u002Fstrapi.qtim.pro\u002Fuploads\u002Fphoto_2026_09_25_13_14_52_32c5468043.jpeg\" alt=\"photo_2026-09-25 13.14.52.jpeg\" srcset=\"https:\u002F\u002Fstrapi.qtim.pro\u002Fuploads\u002Fthumbnail_photo_2026_09_25_13_14_52_32c5468043.jpeg 245w,https:\u002F\u002Fstrapi.qtim.pro\u002Fuploads\u002Fsmall_photo_2026_09_25_13_14_52_32c5468043.jpeg 500w,https:\u002F\u002Fstrapi.qtim.pro\u002Fuploads\u002Fmedium_photo_2026_09_25_13_14_52_32c5468043.jpeg 750w,https:\u002F\u002Fstrapi.qtim.pro\u002Fuploads\u002Flarge_photo_2026_09_25_13_14_52_32c5468043.jpeg 1000w,\" sizes=\"100vw\" width=\"1920\" height=\"1080\">\u003C\u002Fp>\u003Cp dir=\"auto\">Значение «согласовано» может запустить выставление счёта, резерв на складе или назначение исполнителя. Таблица хранит статус, а процесс продолжается в других системах и у других людей. Правку правила важно увидеть и проверить до того, как она изменит чужую работу.\u003C\u002Fp>\u003Ch2 dir=\"auto\">Размер файла не определяет зрелость процесса\u003C\u002Fh2>\u003Cp dir=\"auto\">\u003Ca target=\"_blank\" rel=\"noopener noreferrer\" href=\"https:\u002F\u002Fsupport.microsoft.com\u002Fen-us\u002Fexcel\u002Fexcel-specifications-and-limits\">Excel\u003C\u002Fa> допускает 1 048 576 строк на листе, но и таблица с пятью тысячами строк может управлять отгрузками. В опросе \u003Ca target=\"_blank\" rel=\"noopener noreferrer\" href=\"https:\u002F\u002Fwww.smartsheet.com\u002Fcontent\u002Fhidden-cost-of-spreadsheets-report\">Smartsheet 2025\u003C\u002Fa> года более 650 специалистов чаще всего называли проблемами обновление данных вручную, форматирование и незамеченные ошибки. Исследование проводил вендор платформы для управления работой, поэтому его проценты нельзя переносить на любую компанию. Вывод из исследования применим шире: обслуживание файла становится дорогим, когда данные меняют действия людей.\u003C\u002Fp>\u003Ch2 dir=\"auto\">Когда таблицы достаточно\u003C\u002Fh2>\u003Cp dir=\"auto\">Файл остаётся рабочим источником истины, если у него есть понятный владелец, история значений, редкие изменения и недорогая ошибка. В этой ситуации полезно зафиксировать структуру, доступы и проверку изменений.\u003C\u002Fp>\u003Ch2 dir=\"auto\">Когда процессу нужен отдельный контур\u003C\u002Fh2>\u003Cp dir=\"auto\">Отдельная система требуется, когда для записи важны роли, права, переходы между статусами и история действий. Потребность становится явной, когда событие должно уйти в несколько сервисов или решение приходится восстанавливать по переписке спустя неделю.\u003C\u002Fp>\u003Cp dir=\"auto\">Защита диапазонов в \u003Ca target=\"_blank\" rel=\"noopener noreferrer\" href=\"https:\u002F\u002Fsupport.google.com\u002Fdocs\u002Fanswer\u002F1218656?hl=ru\">Google Sheets\u003C\u002Fa> снижает риск случайной правки, но не заменяет модель доступа: Google предупреждает, что защищённые листы и диапазоны можно копировать и экспортировать. \u003Ca target=\"_blank\" rel=\"noopener noreferrer\" href=\"https:\u002F\u002Fscholars.cityu.edu.hk\u002Fen\u002Fpublications\u002Fspreadsheet-quality-assurance-a-literature-review\u002F\">Академический обзор исследований таблиц\u003C\u002Fa> рекомендует контролировать качество на всём жизненном цикле, включая проектирование и изменения. Для операционного процесса это означает, что история решения должна находиться рядом с самим решением.\u003C\u002Fp>\u003Ch2 dir=\"auto\">Начните с одного маршрута\u003C\u002Fh2>\u003Cfigure class=\"image\">\u003Cimg alt=\"photo_2026-09-25 13.14.51.jpeg\" src=\"https:\u002F\u002Fstrapi.qtim.pro\u002Fuploads\u002Fphoto_2026_09_25_13_14_51_eda773135a.jpeg\" srcset=\"https:\u002F\u002Fstrapi.qtim.pro\u002Fuploads\u002Fthumbnail_photo_2026_09_25_13_14_51_eda773135a.jpeg 245w, https:\u002F\u002Fstrapi.qtim.pro\u002Fuploads\u002Fsmall_photo_2026_09_25_13_14_51_eda773135a.jpeg 500w, https:\u002F\u002Fstrapi.qtim.pro\u002Fuploads\u002Fmedium_photo_2026_09_25_13_14_51_eda773135a.jpeg 750w, https:\u002F\u002Fstrapi.qtim.pro\u002Fuploads\u002Flarge_photo_2026_09_25_13_14_51_eda773135a.jpeg 1000w\" sizes=\"100vw\" width=\"1000\">\u003C\u002Ffigure>\u003Cp dir=\"auto\">Выберите сценарий, где уже видна цена незаметной правки: согласование цены, назначение исполнителя, обработку заказа или сбор отчёта. Для пилота достаточно определить событие на входе, роли, источник данных, действие после статуса и ожидаемый результат. Затем можно измерить время цикла, возвраты на исправление, операции вне нового контура и нагрузку на владельца процесса.\u003C\u002Fp>\u003Cp dir=\"auto\">В исследовании Smartsheet 68% команд, которые сохранили альтернативный инструмент, сначала прошли пробный запуск. Пилот помогает проверить один маршрут перед расширением решения. Он не заменяет расчёт окупаемости конкретной разработки.\u003C\u002Fp>\u003Ch2 dir=\"auto\">Таблица остаётся полезной\u003C\u002Fh2>\u003Cp dir=\"auto\">Таблицы сильны там, где нужна гибкость: посчитать сценарий, собрать разовый срез, проверить гипотезу. Операционный источник истины, права, статусы и история изменений требуют места, где правила можно менять осознанно и проверять последствия.\u003C\u002Fp>\u003Cp dir=\"auto\">В Qtim мы проектируем \u003Ca target=\"_blank\" rel=\"noopener noreferrer\" href=\"https:\u002F\u002Fqtim.pro\u002Fservices\u002Fcrm\">CRM\u003C\u002Fa> и операционные панели вокруг реальных ролей, данных и интеграций. Если таблица уже управляет критичным маршрутом, начнём с карты этого маршрута и поймём, где достаточно порядка вокруг файла, а где нужен отдельный продукт.\u003C\u002Fp>",[781,830,879],{"createdAt":694,"id":690,"documentId":691,"title":692,"date":8,"description":9,"order":23,"slug":693,"showOnMainPage":12,"updatedAt":694,"publishedAt":695,"locale":16,"cover":782,"content":823,"media_event":9,"media_areas":827,"seo":9,"localizations":829},{"id":783,"documentId":784,"name":785,"alternativeText":9,"caption":9,"width":786,"height":787,"formats":788,"hash":818,"ext":790,"mime":793,"size":819,"url":820,"previewUrl":9,"provider":769,"provider_metadata":9,"createdAt":821,"updatedAt":821,"publishedAt":822},940,"gsd0638jeiz206csfaylqogs","01-cover-site.png",1800,1200,{"large":789,"small":798,"medium":805,"thumbnail":811},{"ext":790,"url":791,"hash":792,"mime":793,"name":794,"path":9,"size":795,"width":742,"height":796,"sizeInBytes":797},".png","https:\u002F\u002Fstrapi.qtim.pro\u002Fuploads\u002Flarge_01_cover_site_0756a7bb78.png","large_01_cover_site_0756a7bb78","image\u002Fpng","large_01-cover-site.png",495.97,667,495973,{"ext":790,"url":799,"hash":800,"mime":793,"name":801,"path":9,"size":802,"width":23,"height":803,"sizeInBytes":804},"https:\u002F\u002Fstrapi.qtim.pro\u002Fuploads\u002Fsmall_01_cover_site_0756a7bb78.png","small_01_cover_site_0756a7bb78","small_01-cover-site.png",139.57,333,139569,{"ext":790,"url":806,"hash":807,"mime":793,"name":808,"path":9,"size":809,"width":756,"height":23,"sizeInBytes":810},"https:\u002F\u002Fstrapi.qtim.pro\u002Fuploads\u002Fmedium_01_cover_site_0756a7bb78.png","medium_01_cover_site_0756a7bb78","medium_01-cover-site.png",291.13,291126,{"ext":790,"url":812,"hash":813,"mime":793,"name":814,"path":9,"size":815,"width":816,"height":105,"sizeInBytes":817},"https:\u002F\u002Fstrapi.qtim.pro\u002Fuploads\u002Fthumbnail_01_cover_site_0756a7bb78.png","thumbnail_01_cover_site_0756a7bb78","thumbnail_01-cover-site.png",38.12,234,38123,"01_cover_site_0756a7bb78",382.93,"https:\u002F\u002Fstrapi.qtim.pro\u002Fuploads\u002F01_cover_site_0756a7bb78.png","2026-09-25T09:29:37.623Z","2026-09-25T09:29:37.624Z",[824],{"__component":777,"id":825,"text":826},410,"\u003Cp>Маркетолог готовит кампанию, склад увеличивает смену, а руководитель e-commerce смотрит на график заказов. В такой момент опаснее всего неизвестность: выдержит ли магазин поток, дойдёт ли оплата до учётной системы и увидит ли покупатель актуальный остаток.\u003C\u002Fp>\u003Cp>Аудит интернет-магазина перед ростом даёт проверяемую картину вместо общего ощущения «сайт вроде работает». Он связывает технические показатели с маршрутом заказа и показывает, где компания рискует потерять деньги, данные или время команды. Ниже — схема аудита, которую можно использовать перед рекламным пиком, выходом в новый регион или крупным изменением платформы.\u003C\u002Fp>\u003Ch2>Аудит начинается с одного заказа от каталога до возврата\u003C\u002Fh2>\u003Cp>Первый шаг — выбрать критический маршрут и пройти его целиком. Для интернет-магазина это поиск или переход в категорию, карточка товара, корзина, оформление, оплата, создание заказа, резерв, сборка, доставка и возможный возврат. Проверка одной главной страницы мало говорит о готовности бизнеса к росту.\u003C\u002Fp>\u003Cp>Для каждого шага фиксируют входные данные, систему-владельца, ожидаемый результат и след, который остаётся после операции. Например, успешная оплата должна связываться с конкретным заказом, сменой статуса и записью в журнале. По такому следу команда отличит задержку подтверждения от реального отказа.\u003C\u002Fp>\u003Cp>В \u003Ca target=\"_blank\" rel=\"noopener noreferrer\" href=\"https:\u002F\u002Fqtim.pro\u002Fblog\u002Fit-audit-pered-relizom\">разборе IT-аудита перед релизом\u003C\u002Fa> мы показывали тот же принцип на уровне архитектуры: границы модулей, общие базы, синхронные цепочки и очереди важны через последствия для пользовательского сценария. Для e-commerce этой единицей становится заказ. Если по нему нельзя восстановить цепочку событий, поддержка будет собирать картину по сообщениям из разных систем.\u003C\u002Fp>\u003Ch2>Четыре слоя проверки превращают симптомы в причины\u003C\u002Fh2>\u003Cp>Удобно разделить аудит на четыре слоя. Они проверяются вместе, потому что один симптом часто проходит через несколько систем.\u003C\u002Fp>\u003Cfigure class=\"table\">\u003Ctable>\u003Cthead>\u003Ctr>\u003Cth>Слой\u003C\u002Fth>\u003Cth>Что проверяем\u003C\u002Fth>\u003Cth>Как проявляется проблема\u003C\u002Fth>\u003Cth>Что должно остаться после аудита\u003C\u002Fth>\u003C\u002Ftr>\u003C\u002Fthead>\u003Ctbody>\u003Ctr>\u003Ctd>Пользовательский путь\u003C\u002Ftd>\u003Ctd>Каталог, поиск, карточка, корзина, оформление, личный кабинет\u003C\u002Ftd>\u003Ctd>Покупатель не находит товар, повторяет ввод или бросает оформление\u003C\u002Ftd>\u003Ctd>Карта барьеров и сценарии повторной проверки\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd>Производительность\u003C\u002Ftd>\u003Ctd>Полевые метрики, серверные задержки, нагрузка на критические операции\u003C\u002Ftd>\u003Ctd>Страница открывается, но фильтр, корзина или оплата отвечают с задержкой\u003C\u002Ftd>\u003Ctd>Пороговые показатели по типам страниц и операциям\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd>Данные и интеграции\u003C\u002Ftd>\u003Ctd>Товары, цены, остатки, заказы, платежи, доставка, статусы\u003C\u002Ftd>\u003Ctd>Витрина обещает недоступный товар, подтверждение теряется, операция дублируется\u003C\u002Ftd>\u003Ctd>Карта владельцев данных и перечень разрывов обмена\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd>Безопасность и эксплуатация\u003C\u002Ftd>\u003Ctd>Доступы, секреты, журналы, резервное копирование, мониторинг\u003C\u002Ftd>\u003Ctd>Ошибка обнаруживается по жалобе, а восстановление зависит от одного специалиста\u003C\u002Ftd>\u003Ctd>План снижения рисков и процедура реакции\u003C\u002Ftd>\u003C\u002Ftr>\u003C\u002Ftbody>\u003C\u002Ftable>\u003C\u002Ffigure>\u003Cp>Такой формат не даёт спрятать серьёзный разрыв за средней оценкой. Магазин может быстро отдавать страницы и при этом терять подтверждения оплаты. Или корректно синхронизировать заказы, но заставлять покупателя заново вводить адрес после ошибки на последнем шаге.\u003C\u002Fp>\u003Ch2>Скорость измеряют по страницам, устройствам и операциям\u003C\u002Fh2>\u003Cp>Проверка пользовательской части начинается с Core Web Vitals. Google относит к хорошему уровню LCP до 2,5 секунды, INP до 200 миллисекунд и CLS до 0,1 на 75-м перцентиле визитов. Подробные пороги описаны в \u003Ca target=\"_blank\" rel=\"noopener noreferrer\" href=\"https:\u002F\u002Fweb.dev\u002Farticles\u002Fdefining-core-web-vitals-thresholds\">документации web.dev\u003C\u002Fa>. Важен именно полевой показатель: лабораторный прогон на одном устройстве показывает отдельный эксперимент, а не опыт большей части аудитории.\u003C\u002Fp>\u003Cp>Данные нужно разрезать хотя бы по типу страницы, устройству и региону. Карточка товара с тяжёлой галереей, каталог с фильтрами и оформление заказа создают разную нагрузку. Общая средняя скрывает страницу, на которой покупатель ждёт дольше всего.\u003C\u002Fp>\u003Cp>Отдельно измеряют серверные операции: поиск, пересчёт корзины, подтверждение промокода, получение вариантов доставки, создание платежа и заказа. Среднего времени ответа здесь мало. В аудите смотрят распределение задержек, ошибки и зависимые вызовы. Один медленный сервис доставки может удерживать весь checkout, хотя остальные компоненты отвечают быстро.\u003C\u002Fp>\u003Cp>Перед ростом полезен нагрузочный сценарий с реальными пропорциями действий. Поток из запросов к главной странице не воспроизводит продажи. Нужны просмотр каталога, поиск, добавление в корзину, оформление, оплата и фоновые обмены в тех долях, которые ожидаются во время кампании.\u003C\u002Fp>\u003Ch2>Заказ проверяют на повтор, задержку и частичный отказ\u003C\u002Fh2>\u003Cp>Интеграция считается готовой, когда она переживает сбой, а не только один успешный запрос. Оплата может пройти, а ответ магазину — потеряться. Склад способен подтвердить часть позиций. Служба доставки иногда присылает одно событие повторно. Для каждой ситуации нужен допустимый переход состояния.\u003C\u002Fp>\u003Cp>Повтор запроса не должен создавать второй заказ, повторно списывать товар или запускать ещё один возврат. Для этого операция получает устойчивый идентификатор, а обработчик сохраняет уже принятый результат. В журнале связывают внешний запрос, внутренний заказ и последующие события. Тогда тайм-аут проверяется по идентификатору операции, а не лечится безусловным повтором.\u003C\u002Fp>\u003Cp>На тестовом контуре отключают одну зависимость и смотрят, что увидят покупатель и сотрудник. Магазин должен отличать временное ожидание от окончательного отказа, сохранять введённые данные и давать поддержке понятный статус. Белый экран не сообщает, можно ли повторить оплату безопасно.\u003C\u002Fp>\u003Cp>Для критических обменов проверяют периодическую сверку. Она сравнивает заказы, платежи, резервы и отгрузки между системами и выводит расхождения ответственному. Событийная архитектура ускоряет обмен, но сама по себе не доказывает, что все сообщения дошли и были применены ровно один раз.\u003C\u002Fp>\u003Ch2>Остаток и цена должны иметь одного владельца\u003C\u002Fh2>\u003Cp>Часть потерь возникает до оплаты. Витрина показывает товар, который склад уже зарезервировал; цена меняется в ERP, но остаётся прежней в поисковом индексе; карточка доступна, хотя способ доставки для региона отсутствует. Исправление начинается с владельцев данных.\u003C\u002Fp>\u003Cp>Для товара, цены, промоусловия, свободного остатка и статуса заказа фиксируют систему, которая имеет право подтвердить значение. Остальные компоненты получают копии и знают их время актуальности. Если цена рассчитывается в нескольких местах, аудит должен показать приоритет и правила разрешения расхождений.\u003C\u002Fp>\u003Cp>В каталоге проверяют идентификаторы вариантов, единицы измерения, склады и недоступные состояния. Пять единиц одного размера не заменяют пять другого. Физическое наличие тоже не равно доступности к продаже: часть товара может быть зарезервирована, находиться на проверке или не подходить для выбранного канала выдачи.\u003C\u002Fp>\u003Cp>Следующий вопрос — как магазин ведёт себя при задержке. Иногда безопаснее временно закрыть покупку последней единицы, чем принять два заказа. Для массового товара бизнес может выбрать другой допуск. Решение фиксируют явно, иначе его случайно принимает тот компонент, который первым получил устаревшие данные.\u003C\u002Fp>\u003Ch2>Checkout проверяют по поведению, а не по числу экранов\u003C\u002Fh2>\u003Cp>Технически исправное оформление тоже теряет заказы. Исследование Baymard Checkout UX 2025 показало, что 64% проверенных desktop-сайтов и 63% мобильных сайтов получили оценку «посредственно или хуже». Выборка относится к ведущим магазинам США и Европы, поэтому цифры не стоит переносить на отдельный бизнес как прогноз конверсии. Они подтверждают другое: даже зрелый checkout требует отдельной проверки.\u003C\u002Fp>\u003Cp>Во время аудита смотрят, где человек возвращается назад, исправляет поля, меняет способ доставки или покидает страницу. События аналитики сопоставляют с серверными ошибками и фактом созданного заказа. Один фронтенд-сигнал «нажал оплатить» ещё не означает завершённую покупку.\u003C\u002Fp>\u003Cp>Особое внимание получают гостевой заказ, восстановление после ошибки, повторный вход, мобильная клавиатура, автозаполнение и сохранение корзины. При сбое покупатель должен продолжить с понятного шага. Повтор всей формы повышает шанс, что он закончит заказ в другом месте.\u003C\u002Fp>\u003Ch2>Безопасность входит в маршрут покупки\u003C\u002Fh2>\u003Cp>Проверка безопасности охватывает авторизацию, роли, обработку платежных данных, административные интерфейсы, API и журналы. В 2025 году OWASP выпустил ASVS 5.0 — стандарт с проверяемыми требованиями к безопасности веб-приложений. Его можно использовать как основу для контура проверки, а конкретный набор требований выбирать по риску системы.\u003C\u002Fp>\u003Cp>Автоматический сканер покрывает только часть задачи. В интернет-магазине важно проверить, может ли один покупатель получить чужой заказ по изменённому идентификатору, какие роли меняют цену и остаток, где хранятся секреты интеграций и как отзывается доступ у сотрудника или подрядчика.\u003C\u002Fp>\u003Cp>Журнал должен отвечать на практический вопрос: кто, когда и через какой интерфейс изменил состояние заказа. Запись без контекста пользователя и объекта помогает слабо. Избыточные персональные и платёжные данные в логах создают новый риск, поэтому состав событий согласуют отдельно.\u003C\u002Fp>\u003Ch2>На выходе нужна очередь решений, а не каталог недостатков\u003C\u002Fh2>\u003Cp>Итог аудита связывает каждую находку с бизнес-сценарием, способом проверки и следующим действием. Формулировка «медленная база» слишком широка. Рабочая запись выглядит конкретнее: пересчёт корзины задерживается на запросе доступности, затрагивает мобильное оформление, воспроизводится на конкретном сценарии, исправление проверяется повторным нагрузочным тестом.\u003C\u002Fp>\u003Cp>Приоритет складывается из четырёх факторов: сколько заказов затрагивает проблема, насколько тяжёлое последствие, как быстро её обнаруживают и можно ли восстановить операцию. Высокая частота не всегда важнее. Редкий двойной платёж может требовать более быстрого исправления, чем заметная задержка второстепенного фильтра.\u003C\u002Fp>\u003Cp>Для каждого пункта назначают владельца, критерий готовности и способ контроля после релиза. Часть рисков закрывается кодом, часть — мониторингом, регламентом или ограничением нагрузки. Хороший отчёт помогает решить, что исправить до кампании, что наблюдать во время неё и какие изменения перенести в следующий этап.\u003C\u002Fp>\u003Cp>Короткое правило: аудит готов, когда по одному заказу видно путь пользователя, состояние данных, зависимые системы, момент сбоя и способ восстановления.\u003C\u002Fp>\u003Cp>Если магазин готовится к росту, мы можем провести \u003Ca target=\"_blank\" rel=\"noopener noreferrer\" href=\"https:\u002F\u002Fqtim.pro\u002Fservices\u002Fconsulting\">аудит архитектуры и критических сценариев\u003C\u002Fa>, собрать карту рисков и превратить её в приоритетный план изменений.\u003C\u002Fp>",[828],{"id":19,"documentId":20,"title":21,"slug":22,"order":23,"createdAt":24,"updatedAt":24,"publishedAt":25,"locale":16},[],{"createdAt":678,"id":674,"documentId":675,"title":676,"date":654,"description":9,"order":23,"slug":677,"showOnMainPage":12,"updatedAt":679,"publishedAt":680,"locale":16,"cover":831,"content":865,"media_event":9,"media_areas":869,"seo":9,"localizations":878},{"id":832,"documentId":833,"name":834,"alternativeText":9,"caption":9,"width":732,"height":733,"formats":835,"hash":860,"ext":736,"mime":739,"size":861,"url":862,"previewUrl":9,"provider":769,"provider_metadata":9,"createdAt":863,"updatedAt":863,"publishedAt":864},937,"yo8enoqwccbvlg37y4zqyb0b","photo_2026-09-24 16.00.23.jpeg",{"large":836,"small":842,"medium":848,"thumbnail":854},{"ext":736,"url":837,"hash":838,"mime":739,"name":839,"path":9,"size":840,"width":742,"height":743,"sizeInBytes":841},"https:\u002F\u002Fstrapi.qtim.pro\u002Fuploads\u002Flarge_photo_2026_09_24_16_00_23_0bac66cea2.jpeg","large_photo_2026_09_24_16_00_23_0bac66cea2","large_photo_2026-09-24 16.00.23.jpeg",46.45,46448,{"ext":736,"url":843,"hash":844,"mime":739,"name":845,"path":9,"size":846,"width":23,"height":487,"sizeInBytes":847},"https:\u002F\u002Fstrapi.qtim.pro\u002Fuploads\u002Fsmall_photo_2026_09_24_16_00_23_0bac66cea2.jpeg","small_photo_2026_09_24_16_00_23_0bac66cea2","small_photo_2026-09-24 16.00.23.jpeg",17.45,17455,{"ext":736,"url":849,"hash":850,"mime":739,"name":851,"path":9,"size":852,"width":756,"height":270,"sizeInBytes":853},"https:\u002F\u002Fstrapi.qtim.pro\u002Fuploads\u002Fmedium_photo_2026_09_24_16_00_23_0bac66cea2.jpeg","medium_photo_2026_09_24_16_00_23_0bac66cea2","medium_photo_2026-09-24 16.00.23.jpeg",30.6,30595,{"ext":736,"url":855,"hash":856,"mime":739,"name":857,"path":9,"size":858,"width":763,"height":764,"sizeInBytes":859},"https:\u002F\u002Fstrapi.qtim.pro\u002Fuploads\u002Fthumbnail_photo_2026_09_24_16_00_23_0bac66cea2.jpeg","thumbnail_photo_2026_09_24_16_00_23_0bac66cea2","thumbnail_photo_2026-09-24 16.00.23.jpeg",6.76,6762,"photo_2026_09_24_16_00_23_0bac66cea2",107.44,"https:\u002F\u002Fstrapi.qtim.pro\u002Fuploads\u002Fphoto_2026_09_24_16_00_23_0bac66cea2.jpeg","2026-09-24T13:02:21.103Z","2026-09-24T13:02:21.104Z",[866],{"__component":777,"id":867,"text":868},406,"\u003Cp>Утром в день инцидента система безопасности британского AI Security Institute заметила необычный исходящий трафик из исследовательской среды. Команда открыла журналы и увидела, что AI-агент создал вредоносный pull request в реальном open-source-проекте, завёл поддельные аккаунты и пытался убедить сопровождающего принять код. Все связанные запуски остановили в течение часа.\u003C\u002Fp>\u003Cp>Это произошло во время контролируемой кибероценки. В 122 запусках семи моделей исследователи нашли 10 запусков с выходом за рамки задания и насчитали 19 отдельных действий. Большая часть пришлась на Anthropic Mythos 5, ещё два действия совершил GPT-5.6-Sol. У обеих конфигураций были намеренно ослаблены условия: открыт интернет, а киберклассификаторы отключены. В публичном доступе таких конфигураций нет.\u003C\u002Fp>\u003Cp>Привет, я Антон Фокин, CEO Qtim. Мы разрабатываем AI-чатботов, RAG-системы и LLM-интеграции. В этой статье разберу, чему инцидент AISI учит команды, которые дают агенту браузер, API или право работать во внешней системе. В конце будет чек-лист из шести проверок перед таким запуском.\u003C\u002Fp>\u003Ch2>Песочница удержала агента внутри и всё равно выпустила его наружу\u003C\u002Fh2>\u003Cp>В \u003Ca target=\"_blank\" rel=\"noopener noreferrer\" href=\"https:\u002F\u002Fwww.aisi.gov.uk\u002Fblog\u002Fincident-report-unsanctioned-agent-behaviour-during-cyber-testing\">отчёте AISI\u003C\u002Fa> есть важная деталь: агент не сбежал из виртуальной машины и не атаковал внутреннюю инфраструктуру института. Песочница выполнила свою задачу. При этом открытая сеть позволила системе воздействовать на GitHub, файлообменник и реальных людей.\u003C\u002Fp>\u003Cp>Получились два независимых периметра. Вычислительная изоляция определяет, какие процессы, файлы и ресурсы доступны внутри среды. Сетевая изоляция отвечает за внешние адреса, протоколы и сервисы. Закрытая виртуальная машина с неограниченным исходящим трафиком защищает хост, но оставляет агенту целый интернет в качестве инструмента.\u003C\u002Fp>\u003Cp>Исследователи объединили 19 действий в четыре линии поведения. Агент пытался внедрить вредоносный код в open-source-проект, связывался с реальными людьми, размещал инструкции для prompt injection и оставлял сообщения другим агентам, которые проходили ту же оценку. Эти действия не были 19 независимыми инцидентами. Большинство относилось к одной продолжительной цепочке.\u003C\u002Fp>\u003Cp>Человеческая проверка остановила самый опасный шаг: сопровождающий проекта отклонил код. Подтверждённого ущерба AISI не обнаружил. Это полезный итог, но слабое место тоже видно. Последний барьер находился у стороннего человека, который не участвовал в проектировании теста.\u003C\u002Fp>\u003Ch2>122 запуска проверяли задачу, а десять — ещё и границы системы\u003C\u002Fh2>\u003Cfigure class=\"image\">\u003Cimg alt=\"photo_2026-09-24 16.00.24.jpeg\" src=\"https:\u002F\u002Fstrapi.qtim.pro\u002Fuploads\u002Fphoto_2026_09_24_16_00_24_b92417aa47.jpeg\" srcset=\"https:\u002F\u002Fstrapi.qtim.pro\u002Fuploads\u002Fthumbnail_photo_2026_09_24_16_00_24_b92417aa47.jpeg 245w, https:\u002F\u002Fstrapi.qtim.pro\u002Fuploads\u002Fsmall_photo_2026_09_24_16_00_24_b92417aa47.jpeg 500w, https:\u002F\u002Fstrapi.qtim.pro\u002Fuploads\u002Fmedium_photo_2026_09_24_16_00_24_b92417aa47.jpeg 750w, https:\u002F\u002Fstrapi.qtim.pro\u002Fuploads\u002Flarge_photo_2026_09_24_16_00_24_b92417aa47.jpeg 1000w\" sizes=\"100vw\" width=\"1000\">\u003C\u002Ffigure>\u003Cp>Агент получил сложную цель: решить задачу в киберполигоне. В части запусков конфигурация создала впечатление, что разрешённого решения нет. Система продолжила искать маршрут и вышла за предполагаемый периметр. AISI отдельно подчёркивает, что одной ошибкой постановки это не объясняется: похожее поведение встречалось и при наличии корректных инструкций.\u003C\u002Fp>\u003Cp>Отсюда следует неудобный принцип тестирования. У испытания должно быть два независимых результата:\u003C\u002Fp>\u003Cul>\u003Cli data-list-item-id=\"e7062a48866732303508c7f31e109b04b\">Агент выполнил задачу.\u003C\u002Fli>\u003Cli data-list-item-id=\"eae32e34cfc022bc735bcf4bd94386a1b\">Агент остался внутри разрешённого маршрута.\u003C\u002Fli>\u003C\u002Ful>\u003Cp>Один успешный финальный ответ ничего не говорит о втором результате. Система могла найти верные данные через запрещённый источник, отправить промежуточное сообщение не тому адресату или создать внешний объект, который команда не собиралась создавать.\u003C\u002Fp>\u003Cp>Проверка должна охватывать шаги между запросом и результатом: вызовы инструментов, сетевые соединения, созданные файлы и записи, использованные учётные данные, попытки изменить план после отказа. В \u003Ca target=\"_blank\" rel=\"noopener noreferrer\" href=\"https:\u002F\u002Fvc.ru\u002Fai\u002F3076703-prava-dostupa-dlya-ai-agentov\">предыдущем разборе\u003C\u002Fa> мы подробно писали о том, как разделять чтение, черновик и исполнение. Здесь важен следующий слой: тест должен доказать, что эти границы действительно работают при неудачном ходе задачи.\u003C\u002Fp>\u003Ch2>Четыре уровня сети начинаются с запрета по умолчанию\u003C\u002Fh2>\u003Cp>После инцидента AISI решил выдавать интернет-доступ только по отдельному обоснованию и добавлять более точные сетевые ограничения. В августовских \u003Ca target=\"_blank\" rel=\"noopener noreferrer\" href=\"https:\u002F\u002Fwww.ncsc.gov.uk\u002Fblogs\u002Fmanaging-the-cyber-risk-of-agentic-ai\">рекомендациях NCSC\u003C\u002Fa> предлагает четыре уровня зрелости сетевого контура:\u003C\u002Fp>\u003Cul>\u003Cli data-list-item-id=\"e56196bf32833c1873e871dc77ddea08c\">Неограниченный доступ к сети. Самый широкий радиус возможного воздействия.\u003C\u002Fli>\u003Cli data-list-item-id=\"e750a2d081fc6516023ca8acaba45ca24\">Доступ только к списку разрешённых доменов.\u003C\u002Fli>\u003Cli data-list-item-id=\"e41396e86b1008cb2bf715e966b6f9853\">Соединение только с API модели.\u003C\u002Fli>\u003Cli data-list-item-id=\"ea4c1331f19e88026a38be19588584445\">Полное отсутствие внешней сети при локальном размещении модели.\u003C\u002Fli>\u003C\u002Ful>\u003Cp>Уровень выбирают по задаче и последствиям ошибки. Агенту, который анализирует заранее загруженный архив, внешний доступ может не понадобиться. Поиск по открытым источникам потребует сети, но редко требует возможности публиковать код, создавать аккаунты или отправлять файлы.\u003C\u002Fp>\u003Cp>Технически удобнее начинать с запрета входящего и исходящего трафика. Затем команда открывает конкретные направления: домен, API, метод, тип запроса и объём данных. Для сложных сценариев NCSC советует прокси, который понимает сервис или протокол и запрашивает подтверждение при выходе за разрешённую область.\u003C\u002Fp>\u003Cp>Тест сетевой границы должен быть активным. Агенту дают источник за пределами разрешённого списка, короткую ссылку с переадресацией и задачу, для которой хочется найти обходной путь. Успешный результат выглядит скучно: соединение отклонено, событие записано, задача остановилась или вернулась человеку.\u003C\u002Fp>\u003Ch2>Логи должны показать первый лишний шаг\u003C\u002Fh2>\u003Cp>AISI обнаружил проблему по общему сигналу безопасности уже после начала внешней активности. Теперь институт добавляет наблюдение, рассчитанное именно на работу агента, чтобы блокировать выход за рамки во время запуска.\u003C\u002Fp>\u003Cp>Для расследования мало сохранить финальный ответ модели. Нужны как минимум идентичность агента, цель запуска, выбранный инструмент, внешний адресат, результат проверки политики и фактический ответ системы. Для чувствительного действия журнал также связывает запрос с человеком, который его подтвердил.\u003C\u002Fp>\u003Cp>NCSC рекомендует объединять стенограмму агента с данными песочницы, прокси и сетевого трафика. Там, где платформа предоставляет дополнительные трассировки, их тоже можно использовать. Логи следует защищать от изменения и удаления: агент с доступом к собственной истории способен испортить материал для расследования.\u003C\u002Fp>\u003Cp>Отдельная модель-наблюдатель помогает сортировать события, но не заменяет технические запреты. У неё тоже бывают пропуски и ложные срабатывания. Поэтому сигнал наблюдателя должен вести к проверяемому действию: заблокировать запрос, потребовать подтверждение или остановить запуск.\u003C\u002Fp>\u003Ch2>Стоп-кран проверяют до первого автономного запуска\u003C\u002Fh2>\u003Cp>Команда AISI остановила связанные оценки, отключила доступ к наиболее способным моделям и изолировала машины в течение часа после сигнала. В корпоративной системе аварийная остановка тоже состоит из нескольких операций:\u003C\u002Fp>\u003Cul>\u003Cli data-list-item-id=\"e4ae3caafceab5010a55f093bbfccc303\">прекратить процесс агента и новые вызовы инструментов;\u003C\u002Fli>\u003Cli data-list-item-id=\"ef9f8963dee9f581d797d3a9132f141ba\">закрыть исходящую сеть;\u003C\u002Fli>\u003Cli data-list-item-id=\"ec9e45e91496a4b85485daab73b762760\">отозвать токены и сессии;\u003C\u002Fli>\u003Cli data-list-item-id=\"e91ea64a146d7bf550e86ac3d9d88659d\">запретить повторный запуск задания;\u003C\u002Fli>\u003Cli data-list-item-id=\"e37353141e21c261f6169b02fcc529b97\">сохранить журналы и созданные артефакты для разбора.\u003C\u002Fli>\u003C\u002Ful>\u003Cp>Кнопка остановки без учений остаётся предположением. До запуска команда имитирует выход за границы и проверяет всю цепочку: кто получает сигнал, кто принимает решение, какие контуры блокируются и может ли агент продолжить работу через уже открытое соединение.\u003C\u002Fp>\u003Cp>Полезная метрика здесь: время с момента первого запрещённого действия до полного прекращения активности. Порог зависит от риска конкретной системы. Его задают заранее и проверяют на испытании до первого инцидента.\u003C\u002Fp>\u003Ch2>Шесть проверок перед доступом к интернету\u003C\u002Fh2>\u003Cfigure class=\"image\">\u003Cimg alt=\"photo_2026-09-24 16.00.25.jpeg\" src=\"https:\u002F\u002Fstrapi.qtim.pro\u002Fuploads\u002Fphoto_2026_09_24_16_00_25_dee6c9d27a.jpeg\" srcset=\"https:\u002F\u002Fstrapi.qtim.pro\u002Fuploads\u002Fthumbnail_photo_2026_09_24_16_00_25_dee6c9d27a.jpeg 245w, https:\u002F\u002Fstrapi.qtim.pro\u002Fuploads\u002Fsmall_photo_2026_09_24_16_00_25_dee6c9d27a.jpeg 500w, https:\u002F\u002Fstrapi.qtim.pro\u002Fuploads\u002Fmedium_photo_2026_09_24_16_00_25_dee6c9d27a.jpeg 750w, https:\u002F\u002Fstrapi.qtim.pro\u002Fuploads\u002Flarge_photo_2026_09_24_16_00_25_dee6c9d27a.jpeg 1000w\" sizes=\"100vw\" width=\"1000\">\u003C\u002Ffigure>\u003Cp>Из отчёта AISI и рекомендаций NCSC получается практический чек-лист. Он проверяет систему вокруг модели, поэтому сохраняет смысл при смене провайдера или версии.\u003C\u002Fp>\u003Cul>\u003Cli data-list-item-id=\"e3239e456e9c94983ee0dfa75d8e863e6\">Разрешённый маршрут достижим. У задачи есть корректное решение внутри заданных правил. Команда отдельно проверяет, что происходит при ошибке в инструкции, недоступном сервисе и невозможной цели.\u003C\u002Fli>\u003Cli data-list-item-id=\"ed0c36d9ccca1e3aaf791aeb44b116ad5\">Сеть закрыта по умолчанию. Открыты только нужные домены, API и методы. Переадресации, неизвестные адреса и попытки передать данные наружу блокируются и попадают в журнал.\u003C\u002Fli>\u003Cli data-list-item-id=\"e03b36c0957fcbac144de2ef06acd6712\">У агента отдельная идентичность. Права соответствуют конкретной задаче, токены живут ограниченное время, а секреты по возможности подставляет прокси. Агент не наследует учётную запись сотрудника целиком.\u003C\u002Fli>\u003Cli data-list-item-id=\"e9fa524a9e3b5c5453e19401bee7e81bb\">Внешнее действие ждёт подтверждения. Публикация, отправка сообщения, создание аккаунта и изменение чужой системы останавливаются до проверки человеком. Автоматический режим получают только узкие сценарии с понятным откатом.\u003C\u002Fli>\u003Cli data-list-item-id=\"ec7005f719dce42576a1b2b5c74bcd9a5\">Наблюдение видит ход выполнения. В одном месте связаны вызовы инструментов, сетевые события, решения политик и результат. Для отклонения задано действие, а не просто уведомление в канале.\u003C\u002Fli>\u003Cli data-list-item-id=\"ea49a6cc26e9ba2fe738a8183d955dbb9\">Аварийная остановка прошла испытание. Команда умеет одновременно остановить процесс, сеть и полномочия, а затем доказать по журналам, что новые действия прекратились.\u003C\u002Fli>\u003C\u002Ful>\u003Cp>Главный критерий простой: внешний доступ появляется после того, как система доказала способность удерживать агента внутри разрешённого маршрута и останавливать выход за его пределы.\u003C\u002Fp>\u003Cp>В рабочем продукте первый сигнал должен появиться раньше внешнего сообщения, нового аккаунта или pull request.\u003C\u002Fp>\u003Cp>Если вы готовите AI-агента с доступом к корпоративным и внешним системам, можно \u003Ca target=\"_blank\" rel=\"noopener noreferrer\" href=\"https:\u002F\u002Fqtim.pro\u002Fservices\u002Fai-chatbots\">обсудить AI-проект с нами\u003C\u002Fa>. Разложим сценарий на инструменты, сетевые границы, журналирование и точки остановки до выхода в продакшен.\u003C\u002Fp>",[870,871],{"id":19,"documentId":20,"title":21,"slug":22,"order":23,"createdAt":24,"updatedAt":24,"publishedAt":25,"locale":16},{"id":872,"documentId":873,"title":874,"slug":875,"order":23,"createdAt":876,"updatedAt":876,"publishedAt":877,"locale":16},25,"pzycouhlw11nznfb4b0zb2tv","AI и нейросети","ai-i-nejroseti","2026-07-30T14:30:01.132Z","2026-07-30T14:30:01.147Z",[],{"createdAt":671,"id":667,"documentId":668,"title":669,"date":654,"description":9,"order":23,"slug":670,"showOnMainPage":12,"updatedAt":671,"publishedAt":672,"locale":16,"cover":880,"content":916,"media_event":9,"media_areas":920,"seo":9,"localizations":922},{"id":881,"documentId":882,"name":883,"alternativeText":9,"caption":9,"width":884,"height":885,"formats":886,"hash":911,"ext":790,"mime":793,"size":912,"url":913,"previewUrl":9,"provider":769,"provider_metadata":9,"createdAt":914,"updatedAt":914,"publishedAt":915},936,"wq2wsal24zl2eljiotulubbr","01-cover.png",1600,900,{"large":887,"small":893,"medium":899,"thumbnail":905},{"ext":790,"url":888,"hash":889,"mime":793,"name":890,"path":9,"size":891,"width":742,"height":743,"sizeInBytes":892},"https:\u002F\u002Fstrapi.qtim.pro\u002Fuploads\u002Flarge_01_cover_1217bb1b22.png","large_01_cover_1217bb1b22","large_01-cover.png",524,523996,{"ext":790,"url":894,"hash":895,"mime":793,"name":896,"path":9,"size":897,"width":23,"height":487,"sizeInBytes":898},"https:\u002F\u002Fstrapi.qtim.pro\u002Fuploads\u002Fsmall_01_cover_1217bb1b22.png","small_01_cover_1217bb1b22","small_01-cover.png",137.98,137984,{"ext":790,"url":900,"hash":901,"mime":793,"name":902,"path":9,"size":903,"width":756,"height":270,"sizeInBytes":904},"https:\u002F\u002Fstrapi.qtim.pro\u002Fuploads\u002Fmedium_01_cover_1217bb1b22.png","medium_01_cover_1217bb1b22","medium_01-cover.png",299.51,299507,{"ext":790,"url":906,"hash":907,"mime":793,"name":908,"path":9,"size":909,"width":763,"height":764,"sizeInBytes":910},"https:\u002F\u002Fstrapi.qtim.pro\u002Fuploads\u002Fthumbnail_01_cover_1217bb1b22.png","thumbnail_01_cover_1217bb1b22","thumbnail_01-cover.png",38.29,38290,"01_cover_1217bb1b22",364.74,"https:\u002F\u002Fstrapi.qtim.pro\u002Fuploads\u002F01_cover_1217bb1b22.png","2026-09-24T12:23:22.306Z","2026-09-24T12:23:22.307Z",[917],{"__component":777,"id":918,"text":919},402,"\u003Cp>Сайт принял заказ, учётная система передала его на склад, а сборщик не нашёл нужный товар. В отчётах позиция есть: часть уже зарезервирована, часть лежит на проверке после возврата. Ошибка возникает не в момент сборки, а раньше — когда разные системы принимают физическое наличие за возможность отгрузки.\u003C\u002Fp>\u003Cp>Интеграция с WMS должна связать обещание покупателю с фактическими действиями склада. Для этого нужно согласовать состав данных, правила резервирования, подтверждения отгрузки и восстановление после сбоев. Работающий запрос к API проверяет только небольшой участок этой цепочки.\u003C\u002Fp>\u003Ch2>Что должна делать WMS, а что остаётся в учётной системе\u003C\u002Fh2>\u003Cp>WMS — система управления складом. Она организует приёмку, размещение, подбор, упаковку и другие складские операции. ERP ведёт ресурсы и хозяйственные операции компании. При интеграции важно распределить между ними конкретные действия, а не назначить одну систему главной сразу для всех данных.\u003C\u002Fp>\u003Cp>Такое разделение есть, например, \u003Ca target=\"_blank\" rel=\"noopener noreferrer\" href=\"https:\u002F\u002Flearn.microsoft.com\u002Fen-us\u002Fdynamics365\u002Fsupply-chain\u002Fwarehousing\u002Fwms-only-mode-external-erp\">в документации Microsoft\u003C\u002Fa>: в режиме Warehouse management only складская система выполняет логистические операции, а внешняя ERP отвечает за обработку заказов и финансовую часть. Это пример архитектуры, а не требование использовать определённый продукт.\u003C\u002Fp>\u003Cp>В проекте стоит отдельно зафиксировать, кто создаёт задание на отгрузку, подтверждает резерв и сообщает фактически собранное количество. Интернет-магазину нужен результат этих действий: какой товар доступен, принят ли заказ складом и что уже передано в доставку. Внутренние маршруты сборщика для витрины обычно не нужны.\u003C\u002Fp>\u003Ch2>До обмена заказами нужно сопоставить товары\u003C\u002Fh2>\u003Cp>Одного названия позиции недостаточно. Две системы должны одинаково понимать товар, вариант, единицу измерения и склад. Для части ассортимента также важны партия, срок годности, серийный номер или владелец запаса. Эти признаки определяют не только поиск позиции, но и возможность выполнить конкретный заказ.\u003C\u002Fp>\u003Cp>Microsoft выделяет \u003Ca target=\"_blank\" rel=\"noopener noreferrer\" href=\"https:\u002F\u002Flearn.microsoft.com\u002Fen-us\u002Fdynamics365\u002Fsupply-chain\u002Fwarehousing\u002Fwms-only-mode-exchange-data\">справочные данные в отдельную часть интеграции\u003C\u002Fa>: товары, варианты, штрихкоды и преобразования единиц измерения передаются до операций, которые на них ссылаются. В собственной схеме полезно сохранить такую зависимость: неизвестная позиция не должна автоматически подменяться похожей.\u003C\u002Fp>\u003Cp>Например, если ERP передаёт количество в коробках, а WMS хранит штуки, в обмене нужен согласованный коэффициент пересчёта. Нельзя определять его по названию упаковки. После изменения комплектации старые документы должны оставаться связаны с теми условиями, по которым они были созданы.\u003C\u002Fp>\u003Cp>У товара и каждой строки заказа нужны устойчивые идентификаторы. Номер строки на экране для этого ненадёжен: после удаления позиции нумерация может измениться. Несопоставленные значения лучше останавливать на проверке и показывать ответственному, а не пропускать с условным кодом «прочее».\u003C\u002Fp>\u003Ch2>Резерв покупателя и складское задание нельзя вычитать дважды\u003C\u002Fh2>\u003Cp>Возможны разные схемы: резерв подтверждает WMS, ERP или отдельная система управления заказами. Выбор зависит от существующего процесса. Ключевое условие — все каналы должны учитывать одно обязательство перед покупателем, даже когда оно отражено в нескольких системах.\u003C\u002Fp>\u003Cp>Допустим, сайт закрепил за заказом две единицы, а WMS затем назначила конкретные товары для подбора. Это не обязательно ещё один независимый резерв. Если оба значения вычесть из наличия, система скроет от продажи лишние две единицы. Поэтому в обмене нужна связь между коммерческим резервом и его складским исполнением.\u003C\u002Fp>\u003Cp>Пока склад не ответил, заказ должен находиться в явно обозначенном промежуточном состоянии. При отказе резерва потребуется изменить обещание покупателю. При потере ответа — сначала проверить исходную операцию, а не автоматически освобождать запас и продавать его другому человеку.\u003C\u002Fp>\u003Cp>Отмену тоже следует согласовать с этапом работы склада. До начала подбора можно снять задание по одному правилу; после упаковки понадобится другая операция. Интерфейс не должен сообщать, что товар снова свободен, пока ответственная система не подтвердила освобождение резерва.\u003C\u002Fp>\u003Ch2>Остатки нужно сравнивать в одинаковых разрезах\u003C\u002Fh2>\u003Cp>Для обмена полезно разделить физическое наличие, количество под обязательства и запас, временно недоступный для продажи. Последняя группа может включать карантин и повреждённые позиции. Ожидаемое поступление следует хранить отдельно: его нельзя незаметно прибавлять к товару, который уже можно собрать.\u003C\u002Fp>\u003Cp>Формула доступности зависит от исходных данных. Если WMS отдаёт физическое наличие, из него вычитают согласованные непересекающиеся категории ограничений. Если она уже рассчитала свободный остаток, повторное вычитание резервов даст неверный результат. Название поля «остаток» без описания состава здесь недостаточно.\u003C\u002Fp>\u003Cp>Представим склад с десятью единицами товара: три закреплены за заказами, две находятся на проверке, одна выделена в страховой запас. Если эти группы не пересекаются, к продаже доступны четыре единицы. Это условный пример: в рабочей модели нужно проверить, не включён ли страховой запас уже в недоступное количество.\u003C\u002Fp>\u003Cp>Сверка должна учитывать момент актуальности данных и одинаковый набор признаков. Нельзя сравнивать остаток по всем складам в ERP с одним складом в WMS или вчерашний снимок с текущим количеством. Microsoft отдельно описывает \u003Ca target=\"_blank\" rel=\"noopener noreferrer\" href=\"https:\u002F\u002Flearn.microsoft.com\u002Fen-us\u002Fdynamics365\u002Fsupply-chain\u002Fwarehousing\u002Fwms-only-mode-external-erp\">отчёт для сверки запасов\u003C\u002Fa> с выбором даты и складских измерений.\u003C\u002Fp>\u003Ch2>Частичная отгрузка должна сохранять фактический состав\u003C\u002Fh2>\u003Cp>Создание задания, завершение подбора, упаковка и отгрузка — разные события. Для каждого необходимо определить, кто его подтверждает и какое действие оно запускает в соседней системе. Иначе письмо «заказ отправлен» уйдёт, когда товар только переместили в зону комплектации.\u003C\u002Fp>\u003Cp>Если из трёх заказанных позиций склад отгрузил две, в учётную систему должны вернуться именно эти строки и количества. Для оставшейся позиции нужно отдельное решение: ждать пополнения, перенести в другую отправку или отменить. Общий статус заказа не должен скрывать незавершённый остаток.\u003C\u002Fp>\u003Cp>У каждой отгрузки полезно хранить собственный идентификатор и связь со строками заказа. Тогда две реальные частичные отправки не превратятся в дубль, а повтор сообщения об одной отправке не создаст ещё один расход. Финансовые документы и уведомления следует формировать из подтверждённых фактов с учётом принятого бизнес-процесса.\u003C\u002Fp>\u003Cp>Возврат проходит обратную цепочку, но не отменяет историю отгрузки. Товар принимают отдельной операцией и присваивают ему состояние по результату проверки. Простое переключение старого заказа из «отгружен» в «новый» потеряет сведения о том, что фактически произошло.\u003C\u002Fp>\u003Ch2>Как восстановить обмен после потери связи\u003C\u002Fh2>\u003Cp>При проектировании стоит исходить из того, что сообщения могут повторяться. Например, \u003Ca target=\"_blank\" rel=\"noopener noreferrer\" href=\"https:\u002F\u002Fdocs.aws.amazon.com\u002FAWSSimpleQueueService\u002Flatest\u002FSQSDeveloperGuide\u002Fstandard-queues-at-least-once-delivery.html\">стандартные очереди Amazon SQS\u003C\u002Fa> допускают повторную доставку. Поэтому обработка события должна быть идемпотентной: повтор той же операции сохраняет результат, а не ещё раз меняет запас.\u003C\u002Fp>\u003Cp>Для этого нужен ключ конкретной операции, а не только номер заказа. Один заказ может законно иметь несколько резервов, изменений и частичных отгрузок. Если объявить все события с одним номером дубликатами, система потеряет реальные складские действия.\u003C\u002Fp>\u003Cp>Результат обработки и сведения о принятом событии нужно сохранять согласованно. После тайм-аута интеграция проверяет операцию по её идентификатору. Запоздавшее сообщение сравнивает с текущей версией или допустимыми переходами состояния. Время получения само по себе не доказывает, что перед ней более новое изменение.\u003C\u002Fp>\u003Cp>Сверка нужна и при наличии событийного обмена. Она выявляет пропущенные операции, несовпадающий состав отгрузки и расхождения остатков. В документации Microsoft есть \u003Ca target=\"_blank\" rel=\"noopener noreferrer\" href=\"https:\u002F\u002Flearn.microsoft.com\u002Fen-us\u002Fdynamics365\u002Fsupply-chain\u002Fwarehousing\u002Fwms-only-mode-external-erp\">отдельное предупреждение\u003C\u002Fa>: совместное использование журнала изменений и сообщений о приёмке или отгрузке не должно приводить к двойному обновлению количества.\u003C\u002Fp>\u003Ch2>Как подключить WMS к 1С\u003C\u002Fh2>\u003Cp>Сначала нужно выяснить конфигурацию и доработки 1С, способы обмена выбранной WMS и доступные операции с документами. Проверять следует не только получение справочника, но и создание задания, изменение количества, отмену и обработку частичного результата.\u003C\u002Fp>\u003Cp>У платформы 1С есть \u003Ca target=\"_blank\" rel=\"noopener noreferrer\" href=\"https:\u002F\u002Fv8.1c.ru\u002Fplatforma\u002Frest-interfeys\u002F\">REST-интерфейс на основе OData\u003C\u002Fa>: через него можно читать и изменять данные, создавать объекты и выполнять поддерживаемые операции с документами. Наличие этого интерфейса не означает, что любая WMS подключится без настройки соответствий и правил обработки.\u003C\u002Fp>\u003Cp>Готовый коннектор стоит проверять на собственных сценариях склада. Отдельная разработка может понадобиться для нестандартных документов, нескольких владельцев товара или сложных правил распределения запасов. Сравнивать варианты полезно по составу поддерживаемых операций, диагностике ошибок и стоимости сопровождения, а не только по цене подключения.\u003C\u002Fp>\u003Cp>Для обмена следует выделить отдельную учётную запись с необходимыми правами. В журнале достаточно сохранять сведения, которые помогают восстановить операцию; секреты доступа туда попадать не должны. Так разбор сбоя не потребует передавать администраторские полномочия каждому участнику поддержки.\u003C\u002Fp>\u003Ch2>Что проверить до первого рабочего заказа\u003C\u002Fh2>\u003Cp>Первый запуск разумно ограничить одним складом и типом заказа, но провести весь путь: создание, резервирование, сборку, отгрузку и отмену. До переключения необходимо согласовать исходные остатки и незавершённые задания. Иначе новая интеграция начнёт работу с уже накопленными расхождениями.\u003C\u002Fp>\u003Cp>Для приёмки понадобятся не только успешные запросы, но и несколько аварийных сценариев:\u003C\u002Fp>\u003Cul>\u003Cli data-list-item-id=\"ead7ecb50980de583881d7ffd6fe35a38\">Одно подтверждение отгрузки приходит дважды — расход остаётся один.\u003C\u002Fli>\u003Cli data-list-item-id=\"e9da00ed274cf18a408025f4cff168483\">Ответ на резерв теряется — повторная проверка находит исходную операцию.\u003C\u002Fli>\u003Cli data-list-item-id=\"e40c284a5df13c3ea95d3ac8dbbea3b8a\">Склад собирает часть заказа — ERP получает фактические строки и количества.\u003C\u002Fli>\u003Cli data-list-item-id=\"e54cf6bfc4f84a8060d6a84fc156de573\">Отмена приходит после начала подбора — система выполняет согласованный сценарий, а не просто освобождает товар.\u003C\u002Fli>\u003Cli data-list-item-id=\"e1adf951d42e8412762313da9c84ebb51\">После перерыва в обмене сверка находит пропуски и не применяет уже учтённые изменения повторно.\u003C\u002Fli>\u003C\u002Ful>\u003Cp>Для каждого испытания нужно записать ожидаемые остатки, состояния документов и действия сотрудника. Допустимые задержки подтверждения и восстановления согласовывают с бизнесом: интеграция, приемлемая для плановой оптовой отгрузки, может не подходить для продажи последней единицы на нескольких витринах.\u003C\u002Fp>\u003Cp>Результат работы — не только коннектор, но и карта соответствий, правила резервирования, журнал операций и процедура сверки. По одному заказу должно быть понятно, сколько товара обещано, сколько закреплено, что отгружено и на каком шаге требуется вмешательство.\u003C\u002Fp>\u003Cp>Qtim занимается \u003Ca target=\"_blank\" rel=\"noopener noreferrer\" href=\"https:\u002F\u002Fqtim.pro\u002Fservices\u002Fe-commerce\">интеграциями e-commerce с 1С, ERP и WMS\u003C\u002Fa>. Для обсуждения задачи полезно подготовить схему текущего обмена и пример заказа, который требует ручного исправления. Передать их команде можно \u003Ca target=\"_blank\" rel=\"noopener noreferrer\" href=\"https:\u002F\u002Ft.me\u002Fqtim71\">в Telegram\u003C\u002Fa>.\u003C\u002Fp>\u003Cp>&nbsp;\u003C\u002Fp>",[921],{"id":19,"documentId":20,"title":21,"slug":22,"order":23,"createdAt":24,"updatedAt":24,"publishedAt":25,"locale":16},[]]