Commit 8a5c6ca
Remove exited_quiescence from error handling
The `exited_quiescence` field on `MsgHandleErrInternal` and
`InteractiveTxMsgError` is a leaky abstraction -- the channelmanager
error handling shouldn't know about quiescence, only whether the holding
cell needs to be released.
Infer this from the presence of a `tx_abort` instead, since exiting
quiescence via an error always produces one. Remove `exited_quiescence`
from `InteractiveTxMsgError`, `MsgHandleErrInternal`, and the return
type of `Channel::tx_abort`, along with the `with_exited_quiescence`
builder.
For unfunded v2 channels, `tx_abort` may be present without quiescence
having been exited, but the holding cell release is a no-op since an
unfunded channel won't have any HTLCs. Similarly, the unreachable
`debug_assert!(false)` branch in `fail_interactive_tx_negotiation` for
funded channels produces a `tx_abort` without exiting quiescence, but
the holding cell release is a no-op since the channel is still quiescent.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>1 parent 93003eb commit 8a5c6ca
2 files changed
Lines changed: 35 additions & 70 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1172 | 1172 | | |
1173 | 1173 | | |
1174 | 1174 | | |
1175 | | - | |
1176 | | - | |
1177 | | - | |
1178 | 1175 | | |
1179 | 1176 | | |
1180 | 1177 | | |
| |||
1818 | 1815 | | |
1819 | 1816 | | |
1820 | 1817 | | |
1821 | | - | |
| 1818 | + | |
1822 | 1819 | | |
1823 | | - | |
1824 | | - | |
1825 | | - | |
| 1820 | + | |
1826 | 1821 | | |
1827 | 1822 | | |
1828 | | - | |
| 1823 | + | |
1829 | 1824 | | |
1830 | 1825 | | |
1831 | 1826 | | |
1832 | | - | |
| 1827 | + | |
1833 | 1828 | | |
1834 | 1829 | | |
1835 | | - | |
| 1830 | + | |
1836 | 1831 | | |
1837 | 1832 | | |
1838 | 1833 | | |
1839 | 1834 | | |
1840 | | - | |
1841 | | - | |
1842 | | - | |
1843 | | - | |
1844 | | - | |
| 1835 | + | |
1845 | 1836 | | |
1846 | 1837 | | |
1847 | 1838 | | |
| |||
1856 | 1847 | | |
1857 | 1848 | | |
1858 | 1849 | | |
1859 | | - | |
1860 | 1850 | | |
1861 | 1851 | | |
1862 | 1852 | | |
| |||
1873 | 1863 | | |
1874 | 1864 | | |
1875 | 1865 | | |
1876 | | - | |
1877 | 1866 | | |
1878 | 1867 | | |
1879 | 1868 | | |
| |||
1890 | 1879 | | |
1891 | 1880 | | |
1892 | 1881 | | |
1893 | | - | |
1894 | 1882 | | |
1895 | 1883 | | |
1896 | 1884 | | |
| |||
1907 | 1895 | | |
1908 | 1896 | | |
1909 | 1897 | | |
1910 | | - | |
1911 | 1898 | | |
1912 | 1899 | | |
1913 | 1900 | | |
| |||
1924 | 1911 | | |
1925 | 1912 | | |
1926 | 1913 | | |
1927 | | - | |
1928 | 1914 | | |
1929 | 1915 | | |
1930 | 1916 | | |
| |||
1985 | 1971 | | |
1986 | 1972 | | |
1987 | 1973 | | |
1988 | | - | |
| 1974 | + | |
1989 | 1975 | | |
1990 | 1976 | | |
1991 | 1977 | | |
1992 | 1978 | | |
1993 | 1979 | | |
1994 | | - | |
| 1980 | + | |
1995 | 1981 | | |
1996 | 1982 | | |
1997 | 1983 | | |
| |||
2000 | 1986 | | |
2001 | 1987 | | |
2002 | 1988 | | |
2003 | | - | |
| 1989 | + | |
2004 | 1990 | | |
2005 | 1991 | | |
2006 | 1992 | | |
| |||
2028 | 2014 | | |
2029 | 2015 | | |
2030 | 2016 | | |
2031 | | - | |
| 2017 | + | |
2032 | 2018 | | |
2033 | 2019 | | |
2034 | 2020 | | |
2035 | | - | |
| 2021 | + | |
2036 | 2022 | | |
2037 | 2023 | | |
2038 | 2024 | | |
| |||
2048 | 2034 | | |
2049 | 2035 | | |
2050 | 2036 | | |
2051 | | - | |
| 2037 | + | |
2052 | 2038 | | |
2053 | 2039 | | |
2054 | 2040 | | |
| |||
14286 | 14272 | | |
14287 | 14273 | | |
14288 | 14274 | | |
14289 | | - | |
| 14275 | + | |
14290 | 14276 | | |
14291 | | - | |
14292 | | - | |
14293 | | - | |
14294 | | - | |
14295 | | - | |
| 14277 | + | |
| 14278 | + | |
| 14279 | + | |
14296 | 14280 | | |
14297 | 14281 | | |
14298 | 14282 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1073 | 1073 | | |
1074 | 1074 | | |
1075 | 1075 | | |
1076 | | - | |
1077 | 1076 | | |
1078 | 1077 | | |
1079 | 1078 | | |
| |||
1088 | 1087 | | |
1089 | 1088 | | |
1090 | 1089 | | |
1091 | | - | |
1092 | 1090 | | |
1093 | 1091 | | |
1094 | 1092 | | |
| |||
1108 | 1106 | | |
1109 | 1107 | | |
1110 | 1108 | | |
1111 | | - | |
1112 | | - | |
1113 | | - | |
1114 | | - | |
1115 | | - | |
1116 | | - | |
1117 | | - | |
| 1109 | + | |
1118 | 1110 | | |
1119 | 1111 | | |
1120 | 1112 | | |
| |||
1135 | 1127 | | |
1136 | 1128 | | |
1137 | 1129 | | |
1138 | | - | |
1139 | 1130 | | |
1140 | 1131 | | |
1141 | 1132 | | |
| |||
1171 | 1162 | | |
1172 | 1163 | | |
1173 | 1164 | | |
1174 | | - | |
1175 | | - | |
1176 | | - | |
1177 | | - | |
1178 | | - | |
1179 | | - | |
1180 | | - | |
| 1165 | + | |
1181 | 1166 | | |
1182 | 1167 | | |
1183 | 1168 | | |
| |||
1194 | 1179 | | |
1195 | 1180 | | |
1196 | 1181 | | |
1197 | | - | |
1198 | | - | |
1199 | | - | |
| 1182 | + | |
| 1183 | + | |
| 1184 | + | |
| 1185 | + | |
| 1186 | + | |
1200 | 1187 | | |
1201 | 1188 | | |
1202 | 1189 | | |
| |||
4635 | 4622 | | |
4636 | 4623 | | |
4637 | 4624 | | |
| 4625 | + | |
4638 | 4626 | | |
4639 | 4627 | | |
4640 | 4628 | | |
| |||
4676 | 4664 | | |
4677 | 4665 | | |
4678 | 4666 | | |
4679 | | - | |
| 4667 | + | |
4680 | 4668 | | |
4681 | 4669 | | |
4682 | 4670 | | |
| |||
4687 | 4675 | | |
4688 | 4676 | | |
4689 | 4677 | | |
4690 | | - | |
4691 | | - | |
| 4678 | + | |
4692 | 4679 | | |
4693 | 4680 | | |
4694 | 4681 | | |
| |||
12007 | 11994 | | |
12008 | 11995 | | |
12009 | 11996 | | |
12010 | | - | |
12011 | | - | |
12012 | 11997 | | |
12013 | | - | |
12014 | 11998 | | |
12015 | 11999 | | |
12016 | 12000 | | |
| |||
12169 | 12153 | | |
12170 | 12154 | | |
12171 | 12155 | | |
12172 | | - | |
12173 | | - | |
12174 | | - | |
12175 | | - | |
12176 | | - | |
| 12156 | + | |
12177 | 12157 | | |
12178 | 12158 | | |
12179 | 12159 | | |
| |||
12197 | 12177 | | |
12198 | 12178 | | |
12199 | 12179 | | |
12200 | | - | |
12201 | 12180 | | |
12202 | | - | |
12203 | | - | |
| 12181 | + | |
12204 | 12182 | | |
12205 | 12183 | | |
12206 | 12184 | | |
| |||
12271 | 12249 | | |
12272 | 12250 | | |
12273 | 12251 | | |
12274 | | - | |
| 12252 | + | |
12275 | 12253 | | |
12276 | 12254 | | |
12277 | 12255 | | |
| |||
12286 | 12264 | | |
12287 | 12265 | | |
12288 | 12266 | | |
12289 | | - | |
| 12267 | + | |
12290 | 12268 | | |
12291 | 12269 | | |
12292 | 12270 | | |
| |||
12328 | 12306 | | |
12329 | 12307 | | |
12330 | 12308 | | |
12331 | | - | |
| 12309 | + | |
12332 | 12310 | | |
12333 | 12311 | | |
12334 | 12312 | | |
| |||
12337 | 12315 | | |
12338 | 12316 | | |
12339 | 12317 | | |
| 12318 | + | |
| 12319 | + | |
| 12320 | + | |
12340 | 12321 | | |
12341 | 12322 | | |
12342 | 12323 | | |
| |||
12368 | 12349 | | |
12369 | 12350 | | |
12370 | 12351 | | |
12371 | | - | |
| 12352 | + | |
12372 | 12353 | | |
12373 | 12354 | | |
12374 | 12355 | | |
| |||
0 commit comments