Russian Offensive Campaign Assessment, October 31
Russian Offensive Campaign Assessment, October 31
Karolina Hird, Katherine Lawlor, George Barros, and Frederick W. Kagan
October 31, 9:00 pm ET
Click here to see ISW’s interactive map of the Russian invasion of Ukraine. This map is updated daily alongside the static maps present in this report.
Russian forces conducted another massive wave of missiles strikes targeting critical Ukrainian infrastructure across the country on October 31, likely in an attempt to degrade Ukraine’s will to fight as temperatures drop. Russian forces fired over 50 Kh-101 and Kh-555 missiles from the northern Caspian Sea and the Volgodonsk region of Rostov Oblast, targeting critical Ukrainian energy infrastructure.[1] The Ukrainian General Staff reported that Ukrainian air defenses shot down 44 out of over 50 Russian missiles.[2] Ukrainian Prime Minister Denys Shmyhal reported that the strikes damaged 18 mostly energy-related targets across 10 Ukrainian regions.[3] Ukrainian officials reported that Russian strikes cut off water to 80% of Kyiv residents on October 31 and left hundreds of thousands without power.[4]
Russian occupation officials once again shifted their rhetoric regarding the Kakhovka Hydroelectric Power Plant (HPP) and are likely setting information conditions to continue to drive evacuations from the west bank of the Dnipro River and provide rhetorical cover for a Russian withdrawal from the area. Kherson Occupation Head Vladimir Saldo announced on October 31 that his administration is expanding the evacuation zone by 15km from the Dnipro River and cited information that Ukraine is preparing for a “massive missile attack” of the Kakhovka HPP dam, which Saldo alleged will cause massive flooding and destruction of civilian infrastructure.[5] Saldo previously claimed on October 26 that it would be “practically impossible” to destroy the dam and that even in case of a breach, the water level of the Dnipro River would only rise 2 meters.[6]
The apparent oscillation in Saldo’s position on the Kakhovka HPP indicates that his administration is likely using threats of breach and flooding to perpetuate an information operation with a two-fold purpose: to drive evacuations from the west bank and to explain away a future Russian withdrawal from the west bank. These is no scenario in which it would be advantageous for Ukraine to blow the dam. The ramifications that such an action would have on the safety of the Zaporizhzhia Nuclear Power Plant (ZNPP), which relies on the water in the Kakhovka reservoir for coolant, and the economic and social implications of flooding over 80 settlements and destroying civilian homes and viable land, entirely preclude the possibility that this is a contingency Ukraine may pursue. Blowing the dam would also make it much harder for Ukrainian forces to achieve their stated aims of liberating the remainder of Kherson Oblast and other territories east of the river. Saldo’s statements are likely therefore meant to encourage residents of the west bank to promptly evacuate and may also establish informational cover for a Russian withdrawal from the west bank. Saldo could be framing the dam explosion as an inevitable and insurmountable obstacle that Russian forces could only avoid by abandoning the west bank and retreating further into Kherson Oblast. Russia’s ability or willingness to physically damage the dam is relatively immaterial—the informational effects of accusing Ukraine of preparing to blow the dam could be sufficient to create rhetorical cover to explain away any future Russian withdrawals.
Russian forces are likely continuing to move troops and military assets across the Dnipro River in anticipation of Ukrainian advances towards Kherson City. Ukrainian military sources reported on October 30 that Russian forces are preparing to move artillery units and weapons from the west bank of the Dnipro River for possible redeployment in other directions.[7] Ukraine’s Southern Operational Command additionally noted on October 31 that Russian forces are preparing to evacuate individual units and military equipment from the west bank and have collected watercraft to facilitate the evacuation.[8] Russian-backed Kherson occupation deputy Kirill Stremousov stated that on October 30 Russian forces also began engineering positions in Bilozerka (6km due west of Kherson City) and Chornobaivka (1km north of Kherson City), which is corroborated by imagery posted by reported Russian collaborators of barbed wire defenses in these areas.[9] The fact that Russian collaborators are preparing to defend Chornobaivka is particularly noteworthy, as Chornobaivka is the last settlement along the M14 north of Kherson City. The current frontline lies less than 20km northwest of Chornobaivka, and active efforts to bolster defense here indicate concern for an imminent Ukrainian advance. The simultaneous evacuation of military assets from the west bank and preparations for the defense of critical areas around Kherson City indicate serious anxiety over Russian control of the west bank.
Wagner financier Yevgeny Prigozhin continued his efforts to increase his status among Russian elites and his presence in St. Petersburg by attacking local officials and announcing the creation of a PMC Wagner Center in St. Petersburg on October 31. Prigozhin reportedly requested on October 31 that the Russian Prosecutor General’s office open a criminal investigation into the “fact” that St. Petersburg Governor Alexander Beglov organized a “criminal community” in St. Petersburg.[10] Prigozhin alleged that Beglov’s criminal network intends to plunder the state budget and enrich corrupt officials. Prigozhin is likely using his criticism of Beglov and other St. Petersburg politicians to enhance his own reputation—and his campaign may be working. The publication Petersburg Vestnik characterized Prigozhin’s popularity as “skyrocketing” on October 31 and asked if he had any plans to form a party or go into politics, to which Prigozhin replied “I do not strive for popularity. My task is to fulfill my duty to the Motherland, and today I do not plan to create any parties, let alone go into politics.”[11]
Prigozhin may or may not create his own political party, but he is establishing himself as a political force, using his popular status and his affiliation with Wagner to critique his opponents within elite circles and to institutionalize his own authority. Prigozhin criticized Russian “oligarchs” and “elites” on October 31 for living in a “state of comfort” and preventing the full mobilization of Russian society: “until [elites’] children go to war, the full mobilization of the country will not happen.”[12] Prigozhin also announced the creation of a “PMC Wagner Center” in St. Petersburg on October 31, which he said is scheduled to open on November 4.[13] Prigozhin described the center as “a complex of buildings in which there are places for free accommodation of inventors, designers, IT specialists, experimental production, and start-up spaces” with the intention of creating a “comfortable environment for generating new ideas in order to increase the defense capability of Russia, including information.” Prigozhin noted that he did not inform the local St. Petersburg administration of the center’s creation because the local government is not a “sufficiently representative structure to interfere with the work of the PMC Wagner Center.” Prigozhin challenged local government officials who have problems with his center to take them up in court and suggested that he will establish new branches if the St. Petersburg branch is successful. Private military companies like Wagner are illegal per the Russian constitution.[14]
Key Takeaways
- Russian forces launched another massive wave of strikes against critical Ukrainian infrastructure, further damaging the power grid and leaving much of Kyiv without water.
- Russian officials again changed their minds about the risk of Ukrainian forces destroying the Kakhovka dam, ordering evacuations of areas that could be flooded. There is no scenario in which Ukraine would benefit from destroying the dam, and this rhetoric is likely meant to speed evacuations and provide informational cover for Russian withdrawals from the west bank.
- Russian forces are continuing to withdraw from the west bank of the Dnipro River even as they set conditions to fight for positions around Kherson City.
- Wagner Private Military Company financier Evgeniy Prigozhin sought to bring charges against the St. Petersburg mayor for corruption and announced the imminent opening of the PMC Wagner Center in St. Petersburg. Prigozhin also attacked “oligarchs” and “elites” for living in comfort and preventing the full mobilization of Russia.
- Russian sources continued to claim that Ukrainian troops conducted counter-offensive operations in northeastern Kharkiv Oblast and along the Svatove-Kreminna line on October 30 and 31.
- Russian forces continued defensive operations and Russian sources reported that Ukrainian forces continued counter-offensive operations in Kherson Oblast on October 30 and 31.
- The Ukrainian interdiction campaign is reportedly damaging Russian forces exfiltrating across the Dnipro River.
- Russian forces continued ground attacks around Bakhmut on October 30 and 31.
- Russian sources claimed that Russian troops made incremental gains in the Avdiivka-Donetsk City area on October 30 and 31, but ISW cannot verify these claims.
- The Russian Ministry of Defense (MoD) is likely attempting to prevent draft dodging by trying to deceive the Russian population into believing that autumn conscripts will not be sent to fight in Ukraine.
- The MoD also announced the end of partial mobilization on October 31, executing Russian President Vladimir Putin’s order to end mobilization by the end of October
- Local Russian governments remain responsible for even basic provisions to mobilized personnel, demonstrating the inefficiency of crowdfunding efforts and uncoordinated supply lines to support a modern military.
- Russian occupation authorities in Kherson Oblast announced that they would allow the use of Ukrainian hryvnias alongside Russian rubles, demonstrating the failure of their monthslong rubleization efforts in Kherson.
- Russian officials continue to create poor conditions in occupied parts of Kherson Oblast, likely to drive local inhabitants to evacuate.
We do not report in detail on Russian war crimes because those activities are well-covered in Western media and do not directly affect the military operations we are assessing and forecasting. We will continue to evaluate and report on the effects of these criminal activities on the Ukrainian military and population and specifically on combat in Ukrainian urban areas. We utterly condemn these Russian violations of the laws of armed conflict, Geneva Conventions, and humanity even though we do not describe them in these reports.
- Ukrainian Counter-offensives—Southern and Eastern Ukraine
- Russian Main Effort—Eastern Ukraine (comprised of one subordinate and two supporting efforts)
- Russian Subordinate Main Effort—Capture the entirety of Donetsk Oblast
- Russian Supporting Effort—Southern Axis
- Russian Mobilization and Force Generation Efforts
- Activities in Russian-occupied Areas
Ukrainian Counter-offensives (Ukrainian efforts to liberate Russian-occupied territories)
Eastern Ukraine: (Eastern Kharkiv Oblast-Western Luhansk Oblast)
Russian sources continued to claim that Ukrainian troops conducted counter-offensive operations in northeastern Kharkiv Oblast on October 30 and 31. The Russian Ministry of Defense (MoD) and Russian milbloggers claimed on October 30 that Ukrainian forces conducted a series of unsuccessful assaults around Orlianka, Tabaivka, and Berestove, all within 30km northwest of Svatove.[15] The Russian MoD also claimed that Russian troops repelled Ukrainian attacks northwest of Svatove in the Kupyansk area on October 31.[16] A Russian milblogger reported that Ukrainian troops are preparing for another offensive in that direction on the Orlianka-Pershotravneve line.[17] The Ukrainian General Staff notably stated that Russian troops attacked Mykolaivka and Novoselivske, both about 30km northwest of Svatove, indicating that Ukrainian troops have advanced east of the Kupyansk area.[18]
Russian sources claimed that Ukrainian troops continued counter-offensive operations along the Svatove-Kreminna line on October 30 and 31. The Russian MoD and Russian milbloggers claimed that Russian troops repelled Ukrainian attacks on Stelmakhivka (15km northwest of Svatove) and Makiivka (22km northwest of Kreminna) on October 30.[19] Geolocated footage posted on October 30 showed the aftermath of an explosion of a bridge across the Krasne River in Krasnorichenske, 15km north of Kreminna, suggesting that Russian forces may be conducting a deliberate withdrawal from settlements north of Kreminna in anticipation of Ukrainian advances.[20] Russian milbloggers additionally claimed that Ukrainian troops attacked Chervonopopivka (5km northwest of Kreminna) on October 30 and 31.[21] The Ukrainian General Staff noted on October 31 that Russian troops shelled Ploshchanka (15km northwest of Kreminna), indicating that Ukrainian troops are continuing to advance towards the R66 Svatove-Kreminna highway north of Kreminna.[22] Russian milbloggers continued to claim that Russian troops, including elements of the BARS-13 Combat Reserve are holding the defense of Kreminna and pushing Ukrainian troops away from the frontline.[23]
Ukrainian and Russian sources discussed offensive operations south of Kreminna around Lysychansk on October 30 and 31. The Ukrainian General Staff reported that Ukrainian troops repelled a Russian attack on Bilohorivka, 10km south of Kreminna.[24] A Russian milblogger claimed on October 31 that Ukrainian sabotage and reconnaissance groups are probing Russian defenses near Bilohorivka.[25]
Southern Ukraine: (Kherson Oblast)
Russian forces continued defensive operations in Kherson Oblast on October 30 and 31. Ukrainian military sources reported that Russian troops are conducting remote mining of areas near the Kherson Oblast frontline, evacuating military assets to the east bank of the Dnipro River, and reforming units (likely adding newly mobilized reservists to reconstitute shell units).[26] Russian sources additionally claimed on October 31 that Russian troops are engineering positions northwest of Kherson City and preparing for defensive operations there. Social media imagery shows reported Russian collaborators installing barbed wire to strengthen defensive positions north of Kherson City in Chornobaivka and west of Kherson City in Bilozerka.[27]
Russian sources claimed that Ukrainian troops continued counter-offensive operations in Kherson Oblast on October 30 and 31. Russian sources reported that Ukrainian forces attempted to break through Russian lines in the Beryslav Raion — the area where Russian lines are currently stretched the furthest — on October 31.[28] Russian sources reported that elements of the Russian Eastern Military District, special forces, and airborne forces repelled Ukrainian attacks near Davydiv Brid on October 30.[29] The Russian MoD claimed on October 31 that Ukrainian troops attacked Russian troops along the current frontline northwest of Beryslav.[30] The Ukrainian General Staff reported on October 31 that Russian forces shelled near previously Russian-claimed Ternovi Pody, Mykolaiv Oblast, (20km northwest of Chornobaivka) on October 31, indicating a possible Ukrainian advance.[31] Video posted on October 30 reportedly shows Ukrainian forces clearing Russian mines in an unspecified area of Kherson Oblast, indicating ongoing Ukrainian efforts to advance into Russian-held territory.[32]
The Ukrainian interdiction campaign is reportedly damaging Russian forces exfiltrating across the Dnipro River. Ukraine’s Southern Operational Command reported on October 31 that Ukrainian fires destroyed two barges that Russian forces used to transport Russian forces from the west (right) bank to the east (left) bank near the Antonivsky Bridge at an unspecified time last week.[33] Ukraine’s Southern Operational Command additionally reported that Ukrainian forces conducted 156 fire missions on October 30 and struck two Russian ammunition warehouses in Beryslav and Bashtanka raions.[34] The Russian Ministry of Defense claimed that Russian forces intercepted six Ukrainian AGM-88 HARM anti-radar missiles near Antonivka on October 30.[35]
Russian Main Effort—Eastern Ukraine
Russian Subordinate Main Effort—Donetsk Oblast (Russian objective: Capture the entirety of Donetsk Oblast, the claimed territory of Russia’s proxies in Donbas)
Russian forces continued ground attacks around Bakhmut on October 30 and 31. The Ukrainian General Staff reported that Ukrainian troops repelled Russian attacks on Bakhmut itself, Yakovlivka (16km northeast of Bakhmut), Bakhmutske (10km northeast of Soledar), and Mayorsk (20km south of Bakhmut) between October 30 and 31.[36] Russian Wagner Group–affiliated media outlet RIAFAN posted a report from the Bakhmut area on October 30 and claimed that intense fighting is ongoing south of Bakhmut and that Wagner Group forces sometimes only advance 500 meters a day.[37] As ISW reported on October 28, Wagner Group financier Yevgeny Prighozin previously stated that Wagner forces are only advancing 100–200 meters per day.[38] Both estimates exaggerate the negligible rate of advance that Russian troops have made south of Bakhmut over the last weeks. Russian milbloggers also claimed on October 31 that Wagner troops are engaged in fierce fighting northeast of Bakhmut around Yakovlivka and on Bakhmut’s northeastern outskirts.[39]
Russian sources claimed that Russian troops made incremental gains in the Avdiivka-Donetsk City area on October 30 and 31. The Ukrainian General Staff reported that Russian troops conducted a series of unsuccessful ground attacks on the northern, northwestern, and southwestern outskirts of Donetsk City on both October 30 and 31.[40] Russian sources claimed that Russian troops captured the eastern part of Vodiane (8km southwest of Avdiivka), broke Ukrainian defensive lines in Opytne (5km southwest of Avdiivka), and fought for control of Pervomaiske (12km southwest of Avdiivka) on October 30.[41] A Russian milblogger claimed that Russian troops completed the capture of Vodiane on October 31 and noted that this claimed advance will allow Russian forces to push northeast on Avdiivka.[42] Russian sources additionally claimed that Donetsk People’s Republic (DNR) units and elements of the 150th Motorized Rifle Division of the 8th Combined Arms Army launched an offensive on Marinka (on the southwestern outskirt of Donetsk City) and made marginal advances within Marinka on October 31.[43] ISW has not yet observed independent confirmation of these Russian claims.
Russian sources claimed that Russian troops launched an offensive southwest of Donetsk City on October 30 and made marginal gains in this area on October 30 and 31. The Russian MoD claimed that Russian forces reached the southern outskirts of Pavlivka (about 50km southwest of Donetsk City) on October 30.[44] Various Russian sources amplified the MoD claim and added that DNR forces took control of most of Pavlivka, with one Russian milblogger claiming that DNR troops had cleared 60 percent of the settlement by October 31.[45] A Russian milblogger reported that elements of the Russian Pacific Fleet entrenched themselves south of Novomykhailivka (25km northeast of Pavlivka) and that elements of the 29th Combined Arms Army, 39th Motorized Rifle Brigade of the 68th Army Corps, and DNR are continuing offensive operations towards Vuhledar.[46] ISW has not observed independent confirmation of these Russian claims. Russian sources also noted that as of October 31, Russian forces have not pushed Ukrainian troops across the Kashlyhach River near Vuhledar.[47] The commander of the DNR ”Vostok” Battalion, Alexander Khodakovsky, noted on October 31 that the Russian offensive in this area is premature and that the Pavlivka-Vuhledar area will be difficult to hold.[48] Russian forces likely initiated this counter-offensive in an attempt to encircle Ukrainian forces near the 2014 frontline in the Vuhledar area, but this offensive endeavor is unlikely to aid Russian troops in taking significant ground beyond the lines that have existed for the last eight years.
Supporting Effort—Southern Axis (Russian objective: Maintain frontline positions and secure rear areas against Ukrainian strikes)
Russian forces continued routine air, missile, and artillery strikes west of Hulyaipole and in Mykolaiv and Dnipropetrovsk oblasts on October 30 and 31.[49] Russian forces launched Kh-95 cruise missiles at Ochakiv on October 30 and hit areas in Bereznehuvate with S-300 anti-aircraft missile systems on October 31.[50] Russian forces additionally shelled Marhanets in the Nikopol Raion of Dnipropetrovsk Oblast with MLRS and tube artillery on October 30 and 31 and damaged critical infrastructure in Kryvyi Rih and Zaporizhzhia City during a series of large-scale missile strikes across Ukraine on October 31.[51] Various sources reported that a Russian rocket landed in Naslavcea, Moldova, after Ukrainian forces shot it down.[52] A Russian milblogger also notably interviewed a group of Cossacks of the Don Brigade operating on the Kinburn Spit on October 31, suggesting that Russian forces still maintain a presence on this narrow strip of land, likely to protect against Ukrainian amphibious landings.[53] It is not clear what the Don Cossacks might be protecting on the Kinburn Spit, however. Multiple Russian milbloggers claimed that Russian forces destroyed a Ukrainian sabotage and reconnaissance group that attempted to conduct a water landing across the Kakhovka reservoir in Enerhodar on October 30.[54] Russian sources made similar claims around September 1.[55] ISW is unable to verify either claim.
Mobilization and Force Generation Efforts (Russian objective: Expand combat power without conducting general mobilization)
The Russian Ministry of Defense (MoD) is attempting to deceive the Russian population into believing that autumn conscripts will not be sent to fight in Ukraine, likely to prevent draft dodging. The MoD amplified a briefing by the head of the 4th Department of Main Organizational and Mobilization of the Russian Armed Forces General Staff, Rear Admiral Vladimir Tsimlyansky, in which Tsimlyansky claimed that the regular autumn conscription campaign, which will begin on November 1, has “nothing to do with the conduct of the special military operation in Ukraine.” Tsimlyansky reassured recruits that uniforms, equipment, and food have already been provided at training grounds and that conscripts will receive five months of training and then will receive positions appropriate to their education and skill. That reassurance is an implicit admission of the Russian state’s failures to properly equip, house, or even feed mobilized personnel in recent months. Tsimlyansky also claimed repeatedly that conscripts will not be deployed to Ukraine. However, Russia’s illegal and unrecognized September annexation of occupied Ukrainian territory means that all of the fighting is taking place in areas that the Kremlin claims as Russian territory. Conscripts will almost certainly be deployed to Ukraine after their training is complete around March or April 2023, and could be deployed sooner in response to changes on the battlefield.
The MoD also announced the end of partial mobilization on October 31, executing Russian President Vladimir Putin’s order to end mobilization by the end of October.[56] The MoD will likely continue to order surreptitious mobilization under the guise of “volunteer battalions” where it thinks it can get away with it but needed to end the partial mobilization process to free up space and trainers for the new November 1 conscription class. The MoD announcement oddly ordered all Russian military districts to immediately return their facilities to their pre-partial mobilization functions — an odd order because many mobilized personnel should not yet be in Ukraine according to announced Russian training plans for them and should still require training facilities. The rest of the mobilized Russian servicemembers will likely arrive in Ukraine in the coming weeks, however, and it could take that long for conscripted personnel to be selected and sent to their training grounds.
Local Russian governments remain responsible for even basic provisions to mobilized personnel, demonstrating the inefficiency of crowdfunding efforts and uncoordinated supply lines to support a modern military. A local Republic of Tatarstan media outlet reported on October 30 that residents of Naberezhnye Chelny sent 6 trucks containing 100 tons of “humanitarian aid” including food, equipment, and “essential items” to mobilized personnel from Tatarstan serving in the Northern Military District.[57] Framing basic troop provisions crowdsourced from local governments and residents as “humanitarian aid” belies the shockingly poor conditions in which forcibly mobilized personnel are serving. The head of the Russian Crimean Occupation Administration, Sergey Aksyonov, claimed on October 31 that his government was continuing to purchase basic winter gear, including thermal underwear, sleeping bags, and protective helmets for mobilized Crimean personnel through “extrabudgetary sources.”[58] And anti-mobilization channels reported on October 30 that state officials in Khabarovsk Krai ordered public employees to “donate” one day’s worth of their salary to support mobilized personnel from the territory.[59]
Some Russian citizens continue to resist the Kremlin’s mobilization practices. Russian forces detained a 19-year-old resident of Almetievsk, Republic of Tatarstan on October 29 on terrorism charges after he tried to set fire to a military registration and enlistment office, reportedly to protest partial mobilization.[60] An unidentified person threw a Molotov cocktail into a military registration and enlistment office in the village of Ust-Kan in the Altai Republic on October 30.[61]
Activity in Russian-occupied Areas (Russian objective: consolidate administrative control of occupied and annexed areas; forcibly integrate Ukrainian civilians into Russian sociocultural, economic, military, and governance systems)
Russian occupation authorities in Kherson Oblast announced that they would allow the use of Ukrainian hryvnias alongside Russian rubles, demonstrating the failure of their monthslong rubleization efforts in Kherson. The Russian deputy head of the Kherson Occupation Administration, Kirill Stremousov, announced on October 30 that the “dual currency system has returned to Kherson markets” and that vendors must accept rubles, but can use rubles and hryvnias.[62] Occupation officials mandated an exchange rate of 1.25 rubles to one hryvnia, a rate that heavily favors those who hold rubles. The actual global exchange rate at time of publication is about 1.68 rubles per hryvnia. Occupation officials had previously spoken of a “single economic complex” between Russia and occupied Ukrainian territories as early as April 6.[63] The Kherson Occupation Administration had announced on May 1 that Kherson Oblast would transition entirely to a ruble economy by September 1.[64] Poor economic conditions and a thriving hryvnia black market likely led occupation authorities to allow the use of the hryvnia, possibly to capture additional revenues from those transactions.
The failure of Russian occupation administrators to impose the ruble demonstrates that their efforts to degrade Ukrainian governance capabilities and Ukrainian identity in occupied areas are likely floundering. Ukrainian national identity and patriotism in Russian-occupied areas has remained, although Ukraine will face difficulties in rebuilding the institutions (and local economies) that Russian occupiers have destroyed as Ukrainian forces liberate additional territory.
Russian officials continue to create poor conditions in occupied parts of Kherson Oblast, likely to drive local inhabitants to evacuate. The Ukrainian Southern Operational Command reported on October 30 that Russian occupation authorities are creating “unlivable” conditions in Kherson Oblast by shutting off water, electricity, and internet access.[65] The Ukrainian General Staff reported on October 30 that occupation authorities in Nova Kakhovka shut down the internet and broadcast orders via loudspeaker calling on civilians to evacuate within 48 hours of October 29.[66] Nova Kakhovka occupation authorities also reportedly ordered businessowners to sell all food and other perishables and close their businesses by November 1.[67]
Note: ISW does not receive any classified material from any source, uses only publicly available information, and draws extensively on Russian, Ukrainian, and Western reporting and social media as well as commercially available satellite imagery and other geospatial data as the basis for these reports. References to all sources used are provided in the endnotes of each update.
[1] https://www.facebook.com/GeneralStaff.ua/posts/pfbid02rznceYc3QUWkDR7BrBVN1VPWat2sjzgiCf1unqhoqQbvP46JJBKyzFQHxBhgkQc3l
[2] https://www.facebook.com/GeneralStaff.ua/posts/pfbid02rznceYc3QUWkDR7BrBVN1VPWat2sjzgiCf1unqhoqQbvP46JJBKyzFQHxBhgkQc3l
[3] https://t.me/Denys_Smyhal/3849
[4] https://www.nytimes.com/live/2022/10/31/world/russia-ukraine-war-news/multiple-explosions-are-heard-in-kyiv-as-officials-say-russia-launched-cruise-missiles?smid=url-share
[5] https://t.me/SALDO_VGA/193
[6] https://www.understandingwar.org/backgrounder/ukraine-conflict-updates
[7] https://www.facebook.com/GeneralStaff.ua/posts/pfbid0QRwbFrfnnoauNkKTpGKXs4BSHpJR8MobKDzgZr259nSj1hMAPJRpY6R8oxhgtp7al; https://www.facebook.com/okPivden/videos/860468468637712/
[8] https://www.facebook.com/watch/?v=878272896522127
[9] https://t.me/Stremousov_Kirill/651; https://twitter.com/bayraktar_1love/status/1586632129311637504
[10] https://t.me/Prigozhin_hat/1921; https://twitter.com/GirkinGirkin/status/1587053801042739200?s=20&t=2K0y8fb-SGfbdty5rr8Mqw
[11] https://t.me/Prigozhin_hat/1927
[12] https://t.me/Prigozhin_hat/1922
[13] https://t.me/Prigozhin_hat/1935; https://www.fontanka dot ru/2022/10/30/71778188/; https://t.me/milinfolive/92661; https://t.me/m0sc0wcalling/13744
[14] https://carnegieendowment.org/2020/06/02/implausible-deniability-russia-s-private-military-companies-pub-81954
[15]https://t.me/mod_russia/21303; https://t.me/rybar/40735
[16] https://t.me/mod_russia/21334
[17] https://t.me/rybar/40767
[18] https://www.facebook.com/GeneralStaff.ua/posts/pfbid02HTs6HEXi4zhZRLSsPEWQUppkdrfSFdhaq1wawRxh6QMU8h86Z3HnS98VLLYUr9xAl
[19] https://t.me/rybar/40735; https://t.me/mod_russia/21303; https://t.me/rybar/40751
[20] https://twitter.com/fdov21/status/1586658252359614464 ; https://twitter.com/bayraktar_1love/status/1586641168326168576 ; https://t.me/Donbas_Operativniy/14021; https://t.me/marochkolive/33006
[21] https://t.me/rybar/40767; https://t.me/rybar/40751; https://t.me/rybar/40735; https://t.me/mod_russia/21303
[22] https://www.facebook.com/GeneralStaff.ua/posts/pfbid02HTs6HEXi4zhZRLSsPEWQUppkdrfSFdhaq1wawRxh6QMU8h86Z3HnS98VLLYUr9xAl
[23] https://twitter.com/GirkinGirkin/status/1587083378456727552?s=20&t=rnNJl6KisMrakKZmpBQRQA; https://t.me/boris_rozhin/68956; https://t.me/wargonzo/8979
[24] https://www.facebook.com/GeneralStaff.ua/posts/pfbid02HTs6HEXi4zhZRLSsPEWQUppkdrfSFdhaq1wawRxh6QMU8h86Z3HnS98VLLYUr9xAl
[25] https://t.me/rybar/40767
[26] https://www.facebook.com/okPivden/videos/860468468637712/; https://www.facebook.com/GeneralStaff.ua/posts/pfbid02HTs6HEXi4zhZRLSsPEWQUppkdrfSFdhaq1wawRxh6QMU8h86Z3HnS98VLLYUr9xAl ; https://t.me/spravdi/20072 ; https://www.facebook.com/watch/?v=878272896522127; https://www.facebook.com/watch/?v=878272896522127; https://www.facebook.com/GeneralStaff.ua/posts/pfbid034mZvWPZujSF3uqqQ74M1XXmnkjszMzojjLt18Vp5tzEFEU4yHdbbQu4GenxZ4bN6l; https://www.facebook.com/okPivden/videos/1282576599247373/; https://www.facebook.com/watch/?v=1080489195952108
[27] https://t.me/Stremousov_Kirill/651; https://twitter.com/bayraktar_1love/status/1586632129311637504
[28] https://t.me/Stremousov_Kirill/665; https://t.me/milinfolive/92694
[29] https://t.me/kommunist/12434; https://t.me/rusich_army/6075’; https://t.me/rybar/40751
[30] https://t.me/mod_russia/21334
[31] https://www.facebook.com/GeneralStaff.ua/posts/pfbid02HTs6HEXi4zhZRLSsPEWQUppkdrfSFdhaq1wawRxh6QMU8h86Z3HnS98VLLYUr9xAl ; https://t.me/rybar/40753
[32] https://twitter.com/Blue_Sauron/status/1586679798801125377
[33] https://www.facebook.com/watch/?v=878272896522127
[34] https://www.facebook.com/okPivden/videos/860468468637712/
[35] https://t.me/mod_russia/21304
[36] https://www.facebook.com/GeneralStaff.ua/posts/pfbid034mZvWPZujSF3uqqQ74M1XXmnkjszMzojjLt18Vp5tzEFEU4yHdbbQu4GenxZ4bN6l; https://www.facebook.com/GeneralStaff.ua/posts/pfbid02HTs6HEXi4zhZRLSsPEWQUppkdrfSFdhaq1wawRxh6QMU8h86Z3HnS98VLLYUr9xAl
[37] https://riafan dot ru/23724497-_mi_nastupaem_boets_chvk_vagner_o_napryazhennoi_situatsii_pod_bahmutom
[38] https://understandingwar.org/backgrounder/russian-offensive-campaign-assessment-october-28
[39] https://t.me/wargonzo/8969
[40] https://www.facebook.com/GeneralStaff.ua/posts/pfbid034mZvWPZujSF3uqqQ74M1XXmnkjszMzojjLt18Vp5tzEFEU4yHdbbQu4GenxZ4bN6l; https://www.facebook.com/GeneralStaff.ua/posts/pfbid02HTs6HEXi4zhZRLSsPEWQUppkdrfSFdhaq1wawRxh6QMU8h86Z3HnS98VLLYUr9xAl
[41] https://t.me/NeoficialniyBeZsonoV/19389; https://t.me/RtrDonetsk/11396; https://t.me/DonbassYasinovatayanaliniiOgnia/33455; https://t.me/grey_zone/15567
[42] https://t.me/rybar/40751
[43] https://t.me/rybar/40772; https://t.me/vladlentatarsky/17167
[44] https://t.me/mod_russia/21303
[45] https://t.me/rybar/40734; https://t.me/kommunist/12434; https://t.me/rusich_army/6075; https://t.me/NeoficialniyBeZsonoV/19392; https://t.me/NeoficialniyBeZsonoV/19393; https://t.me/wargonzo/8959; https://t.me/voenkorKotenok/42195; https://t.me/wargonzo/8959; https://t.me/milchronicles/1255; https://t.me/aleksandr_skif/2464; https://t.me/aleksandr_skif/2463
[46] https://t.me/rybar/40734; https://t.me/rybar/40763
[47] https://twitter.com/GirkinGirkin/status/1586996446741598209?s=20&t=rnNJl6KisMrakKZmpBQRQA ; https://t.me/wargonzo/8969
[48] https://t.me/aleksandr_skif/2465 ; https://t.me/south0wind/2853
[49] https://t.me/zoda_gov_ua/14319
[50] https://www.facebook.com/okPivden/videos/1282576599247373/; https://t.me/rlz_the_kraken/53742; https://t.me/mod_russia/21303; https://t.me/miroshnik_r/9430; https://www.facebook.com/watch/?v=878272896522127 ; https://t.me/rybar/40753
[51] https://t.me/dnipropetrovskaODA/2275 ; https://t.me/spravdi/20073 ; https://t.me/rybar/40753; https://www.facebook.com/watch/?v=878272896522127; ; https://t.me/vilkul/2190; https://t.me/zoda_gov_ua/14303;
[52] https://twitter.com/MarQs__/status/1587013097335709696?s=20&t=rnNJl6KisMrakKZmpBQRQA; https://twitter.com/Noobieshunta_/status/1587014144724795395?s=20&t=rnNJl6KisMrakKZmpBQRQA
[53] https://t.me/sashakots/36905
[54] https://t.me/epoddubny/13436 ; https://t.me/readovkanews/45786; https://t.me/mod_russia/21304; https://t.me/kommunist/12433; https://t.me/rusich_army/6075; https://t.me/kommunist/12434; https://t.me/sashakots/36902
[55] https://www.reuters.com/world/europe/fighting-erupts-ukrainian-troops-deploy-near-enerhodar-reports-2022-09-01/; https://finance.yahoo.com/news/russian-defence-ministry-says-ukrainian-071506888.html?guccounter=1&guce_referrer=aHR0cHM6Ly93d3cuZ29vZ2xlLmNvbS8&guce_referrer_sig=AQAAAG5eVbz2Psyyd5hLp0APgVl8dCdOqzJZU-rNXga5o3x3jrbFyVkVxkA4O0wgSpLtBj7vGFPOSGHPMOZAM61IJhbudrGXl-m2-K0dPuyHQkaFkP2LXUcIaZ85QfG_-MaZmwC-1vkz8ZoU_X5kSD-Ge1gc-7l7plkX25UmpKPzhjOO
[56] https://t.me/bazabazon/14207; https://t.me/readovkanews/45864 ; https://t.me/readovkanews/45865 ; https://t.me/mod_russia/21343
[57] https://t.me/tafffffffffdiaofficial/55421 ; https://notes.citeam.org/mobilization-oct-29-30
[58] https://t.me/Aksenov82/1649
[59] https://t.me/mobilizationnews/2850
[60] https://m.business-gazeta dot ru/news/569514
[61] https://t.me/astrapress/14915; https://notes.citeam.org/mobilization-oct-29-30
[62] https://t.me/Stremousov_Kirill/659
[63] https://www.understandingwar.org/sites/default/files/Ukraine%20Invasion%20Update%2022.pdf
[64] https://understandingwar.org/sites/default/files/Ukraine%20Invasion%20Update%2025.pdf
[65] https://www.facebook.com/watch/?v=860468468637712
[66] https://www.facebook.com/GeneralStaff.ua/posts/pfbid0QRwbFrfnnoauNkKTpGKXs4BSHpJR8MobKDzgZr259nSj1hMAPJRpY6R8oxhgtp7al;
[67] https://t.me/spravdi/20073