Add pending changelog for SpliceFailed / DiscardFunding split
What changed, and why it matters
This commit only adds a pending changelog text file describing an already-merged API change. It does not modify any source code, cryptographic logic, network handling, or serialization behavior. There is no security-relevant content in the diff itself.
No action needed; this is a documentation-only changelog entry. Review the underlying PR #4388 if you want to assess the security of the actual code change.
Security signals we found
No strong security signals were identified.
Evidence from the diff
The commit creates a single pending_changelog file documenting that Event::SpliceFailed no longer carries contributed_inputs/contributed_outputs and that a new Event::DiscardFunding event is used for UTXO cleanup. The file also notes backward/forward compatibility implications for TLV serialization. No code changes are present.
Changed components
Inspect captured patch +21 / −0
diff --git a/pending_changelog/4388-splice-failed-discard-funding.txt b/pending_changelog/4388-splice-failed-discard-funding.txt
new file mode 100644
index 0000000..64fc4ab
--- /dev/null
+++ b/pending_changelog/4388-splice-failed-discard-funding.txt
@@ -0,0 +1,21 @@
+# API Updates
+
+ * `Event::SpliceFailed` no longer carries `contributed_inputs` or `contributed_outputs` fields.
+ Instead, a separate `Event::DiscardFunding` event with `FundingInfo::Contribution` is emitted
+ for UTXO cleanup.
+
+ * `Event::DiscardFunding` with `FundingInfo::Contribution` is also emitted without a
+ corresponding `Event::SpliceFailed` when `ChannelManager::funding_contributed` returns an
+ error (e.g., channel or peer not found, wrong channel state, duplicate contribution).
+
+# Backwards Compatibility
+
+ * Older serializations that included `contributed_inputs` and `contributed_outputs` in
+ `SpliceFailed` will have those fields silently ignored on deserialization (they were odd TLV
+ fields). A `DiscardFunding` event will not be produced when reading these older serializations.
+
+# Forward Compatibility
+
+ * Downgrading will not set the removed `contributed_inputs`/`contributed_outputs` fields on
+ `SpliceFailed`, so older code expecting those fields will see empty vectors for splice
+ failures.
Why this scored 15/100
Community notes
Notes can correct, qualify, or add evidence to the AI analysis. Every note shown here has been validated by a human moderator.
The AI analysis stands alone for now. Submit a note if you can add evidence or important context.