Commit c1594a0
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 e4b1c6b commit c1594a0
2 files changed
+35
-70
lines changed| 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 | | |
| |||
14250 | 14236 | | |
14251 | 14237 | | |
14252 | 14238 | | |
14253 | | - | |
| 14239 | + | |
14254 | 14240 | | |
14255 | | - | |
14256 | | - | |
14257 | | - | |
14258 | | - | |
14259 | | - | |
| 14241 | + | |
| 14242 | + | |
| 14243 | + | |
14260 | 14244 | | |
14261 | 14245 | | |
14262 | 14246 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1027 | 1027 | | |
1028 | 1028 | | |
1029 | 1029 | | |
1030 | | - | |
1031 | 1030 | | |
1032 | 1031 | | |
1033 | 1032 | | |
| |||
1042 | 1041 | | |
1043 | 1042 | | |
1044 | 1043 | | |
1045 | | - | |
1046 | 1044 | | |
1047 | 1045 | | |
1048 | 1046 | | |
| |||
1062 | 1060 | | |
1063 | 1061 | | |
1064 | 1062 | | |
1065 | | - | |
1066 | | - | |
1067 | | - | |
1068 | | - | |
1069 | | - | |
1070 | | - | |
1071 | | - | |
| 1063 | + | |
1072 | 1064 | | |
1073 | 1065 | | |
1074 | 1066 | | |
| |||
1089 | 1081 | | |
1090 | 1082 | | |
1091 | 1083 | | |
1092 | | - | |
1093 | 1084 | | |
1094 | 1085 | | |
1095 | 1086 | | |
| |||
1125 | 1116 | | |
1126 | 1117 | | |
1127 | 1118 | | |
1128 | | - | |
1129 | | - | |
1130 | | - | |
1131 | | - | |
1132 | | - | |
1133 | | - | |
1134 | | - | |
| 1119 | + | |
1135 | 1120 | | |
1136 | 1121 | | |
1137 | 1122 | | |
| |||
1148 | 1133 | | |
1149 | 1134 | | |
1150 | 1135 | | |
1151 | | - | |
1152 | | - | |
1153 | | - | |
| 1136 | + | |
| 1137 | + | |
| 1138 | + | |
| 1139 | + | |
| 1140 | + | |
1154 | 1141 | | |
1155 | 1142 | | |
1156 | 1143 | | |
| |||
4569 | 4556 | | |
4570 | 4557 | | |
4571 | 4558 | | |
| 4559 | + | |
4572 | 4560 | | |
4573 | 4561 | | |
4574 | 4562 | | |
| |||
4610 | 4598 | | |
4611 | 4599 | | |
4612 | 4600 | | |
4613 | | - | |
| 4601 | + | |
4614 | 4602 | | |
4615 | 4603 | | |
4616 | 4604 | | |
| |||
4621 | 4609 | | |
4622 | 4610 | | |
4623 | 4611 | | |
4624 | | - | |
4625 | | - | |
| 4612 | + | |
4626 | 4613 | | |
4627 | 4614 | | |
4628 | 4615 | | |
| |||
11850 | 11837 | | |
11851 | 11838 | | |
11852 | 11839 | | |
11853 | | - | |
11854 | | - | |
11855 | 11840 | | |
11856 | | - | |
11857 | 11841 | | |
11858 | 11842 | | |
11859 | 11843 | | |
| |||
12012 | 11996 | | |
12013 | 11997 | | |
12014 | 11998 | | |
12015 | | - | |
12016 | | - | |
12017 | | - | |
12018 | | - | |
12019 | | - | |
| 11999 | + | |
12020 | 12000 | | |
12021 | 12001 | | |
12022 | 12002 | | |
| |||
12040 | 12020 | | |
12041 | 12021 | | |
12042 | 12022 | | |
12043 | | - | |
12044 | 12023 | | |
12045 | | - | |
12046 | | - | |
| 12024 | + | |
12047 | 12025 | | |
12048 | 12026 | | |
12049 | 12027 | | |
| |||
12114 | 12092 | | |
12115 | 12093 | | |
12116 | 12094 | | |
12117 | | - | |
| 12095 | + | |
12118 | 12096 | | |
12119 | 12097 | | |
12120 | 12098 | | |
| |||
12129 | 12107 | | |
12130 | 12108 | | |
12131 | 12109 | | |
12132 | | - | |
| 12110 | + | |
12133 | 12111 | | |
12134 | 12112 | | |
12135 | 12113 | | |
| |||
12171 | 12149 | | |
12172 | 12150 | | |
12173 | 12151 | | |
12174 | | - | |
| 12152 | + | |
12175 | 12153 | | |
12176 | 12154 | | |
12177 | 12155 | | |
| |||
12180 | 12158 | | |
12181 | 12159 | | |
12182 | 12160 | | |
| 12161 | + | |
| 12162 | + | |
| 12163 | + | |
12183 | 12164 | | |
12184 | 12165 | | |
12185 | 12166 | | |
| |||
12211 | 12192 | | |
12212 | 12193 | | |
12213 | 12194 | | |
12214 | | - | |
| 12195 | + | |
12215 | 12196 | | |
12216 | 12197 | | |
12217 | 12198 | | |
| |||
0 commit comments