bookkeeper, meet splicing - #7533

Merged
ShahanaFarooqui merged 2 commits into
ElementsProject:masterfrom
niftynei:nifty/bkpr_splice_one
Aug 8, 2024
Merged

bookkeeper, meet splicing#7533
ShahanaFarooqui merged 2 commits into
ElementsProject:masterfrom
niftynei:nifty/bkpr_splice_one

Conversation

@niftynei

Copy link
Copy Markdown
Collaborator

update the coin-movment notifications and the bookkeeper respectively so that splices are properly accounted for (quite literally).

Prior to this we haven't been logging the spend of the funding output for splices (they're simply not recorded).

Will update with a PR built on #6980 which includes tests for these.

@niftyneiniftynei added this to the v24.08 milestone Aug 6, 2024
@niftynei
niftyneiforce-pushed the nifty/bkpr_splice_one branch 2 times, most recently from f4c7ffd to a6c5443CompareAugust 6, 2024 06:55
@niftynei
niftynei requested a review from cdecker as a code ownerAugust 6, 2024 06:55
@niftynei
niftyneiforce-pushed the nifty/bkpr_splice_one branch from a6c5443 to 3ccfb9cCompareAugust 6, 2024 06:56

@ddustinddustin left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ACK

struct amount_msat orig_our_msats,
struct amount_sat orig_funding_sats,
struct bitcoin_outpoint *funding,
u32 blockheight, struct bitcoin_txid *txid, const struct channel_inflight *inflight)

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit: newlines

@niftynei
niftyneiforce-pushed the nifty/bkpr_splice_one branch 2 times, most recently from ba32cf8 to 61996ddCompareAugust 7, 2024 00:07
We weren't properly notifying that a channel output has been spent in
the case of it being spent in a splice. This fixes the notification side
of the equation, however there's still some issues remaining for the
bookkeeper side (to come).
Changelog-Fixed: We now send a `coin_movement` notification for splice confirmations of channel funding outpoint spends.
We do some fancy accounting for channel closures; since we're tagging
splice txs as closes we need to mark them as splices so we can treat them
as any other 'normal' on chain event.
@niftynei
niftyneiforce-pushed the nifty/bkpr_splice_one branch from 61996dd to 69bd5a9CompareAugust 8, 2024 16:52
@ShahanaFarooqui
ShahanaFarooqui merged commit 46dcc6e into ElementsProject:masterAug 8, 2024
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants

@niftynei@ddustin@ShahanaFarooqui
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Add copy buttons to all \u003cpre\u003e\u003ccode\u003e blocks\n(function() {\n function addCopyButtons() {\n document.querySelectorAll('pre code').forEach(function(codeBlock) {\n if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;\n codeBlock.parentElement.setAttribute('data-copy-added', 'true');\n \n var btn = document.createElement('button');\n btn.textContent = 'Copy';\n btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';\n btn.onmouseover = function() { this.style.opacity = '1'; };\n btn.onmouseout = function() { this.style.opacity = '0.7'; };\n btn.onclick = function() {\n navigator.clipboard.writeText(codeBlock.textContent).then(function() {\n btn.textContent = 'Copied!';\n setTimeout(function() { btn.textContent = 'Copy'; }, 1500);\n });\n };\n codeBlock.parentElement.style.position = 'relative';\n codeBlock.parentElement.appendChild(btn);\n });\n }\n \n addCopyButtons();\n \n // Re-run on dynamic content\n var observer = new MutationObserver(addCopyButtons);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Add Copy Buttons to Code Blocks"); } } catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); } })(); (function(){ try { var __m = "github.com"; var __re = new RegExp('^' + "github\\.com" + '
Skip to content

bookkeeper, meet splicing - #7533

Merged
ShahanaFarooqui merged 2 commits into
ElementsProject:masterfrom
niftynei:nifty/bkpr_splice_one
Aug 8, 2024
Merged

bookkeeper, meet splicing#7533
ShahanaFarooqui merged 2 commits into
ElementsProject:masterfrom
niftynei:nifty/bkpr_splice_one

Conversation

@niftynei

Copy link
Copy Markdown
Collaborator

update the coin-movment notifications and the bookkeeper respectively so that splices are properly accounted for (quite literally).

Prior to this we haven't been logging the spend of the funding output for splices (they're simply not recorded).

Will update with a PR built on #6980 which includes tests for these.

@niftyneiniftynei added this to the v24.08 milestone Aug 6, 2024
@niftynei
niftyneiforce-pushed the nifty/bkpr_splice_one branch 2 times, most recently from f4c7ffd to a6c5443CompareAugust 6, 2024 06:55
@niftynei
niftynei requested a review from cdecker as a code ownerAugust 6, 2024 06:55
@niftynei
niftyneiforce-pushed the nifty/bkpr_splice_one branch from a6c5443 to 3ccfb9cCompareAugust 6, 2024 06:56

@ddustinddustin left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ACK

struct amount_msat orig_our_msats,
struct amount_sat orig_funding_sats,
struct bitcoin_outpoint *funding,
u32 blockheight, struct bitcoin_txid *txid, const struct channel_inflight *inflight)

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit: newlines

@niftynei
niftyneiforce-pushed the nifty/bkpr_splice_one branch 2 times, most recently from ba32cf8 to 61996ddCompareAugust 7, 2024 00:07
We weren't properly notifying that a channel output has been spent in
the case of it being spent in a splice. This fixes the notification side
of the equation, however there's still some issues remaining for the
bookkeeper side (to come).
Changelog-Fixed: We now send a `coin_movement` notification for splice confirmations of channel funding outpoint spends.
We do some fancy accounting for channel closures; since we're tagging
splice txs as closes we need to mark them as splices so we can treat them
as any other 'normal' on chain event.
@niftynei
niftyneiforce-pushed the nifty/bkpr_splice_one branch from 61996dd to 69bd5a9CompareAugust 8, 2024 16:52
@ShahanaFarooqui
ShahanaFarooqui merged commit 46dcc6e into ElementsProject:masterAug 8, 2024
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants

@niftynei@ddustin@ShahanaFarooqui
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Force GitHub README to respect dark mode\n(function() {\n var style = document.createElement('style');\n style.textContent = '\n .markdown-body {\n color-scheme: dark light;\n }\n .markdown-body pre { background: #161b22 !important; }\n .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; }\n .markdown-body table th, .markdown-body table td { border-color: #30363d !important; }\n .markdown-body img { background: #0d1117; }\n .markdown-body blockquote { border-left-color: #8b949e; }\n .markdown-body hr { border-color: #30363d; }\n ';\n document.head.appendChild(style);\n})();", "GitHub Dark Mode README Fix"); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

bookkeeper, meet splicing - #7533

Merged
ShahanaFarooqui merged 2 commits into
ElementsProject:masterfrom
niftynei:nifty/bkpr_splice_one
Aug 8, 2024
Merged

bookkeeper, meet splicing#7533
ShahanaFarooqui merged 2 commits into
ElementsProject:masterfrom
niftynei:nifty/bkpr_splice_one

Conversation

@niftynei

Copy link
Copy Markdown
Collaborator

update the coin-movment notifications and the bookkeeper respectively so that splices are properly accounted for (quite literally).

Prior to this we haven't been logging the spend of the funding output for splices (they're simply not recorded).

Will update with a PR built on #6980 which includes tests for these.

@niftyneiniftynei added this to the v24.08 milestone Aug 6, 2024
@niftynei
niftyneiforce-pushed the nifty/bkpr_splice_one branch 2 times, most recently from f4c7ffd to a6c5443CompareAugust 6, 2024 06:55
@niftynei
niftynei requested a review from cdecker as a code ownerAugust 6, 2024 06:55
@niftynei
niftyneiforce-pushed the nifty/bkpr_splice_one branch from a6c5443 to 3ccfb9cCompareAugust 6, 2024 06:56

@ddustinddustin left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ACK

struct amount_msat orig_our_msats,
struct amount_sat orig_funding_sats,
struct bitcoin_outpoint *funding,
u32 blockheight, struct bitcoin_txid *txid, const struct channel_inflight *inflight)

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit: newlines

@niftynei
niftyneiforce-pushed the nifty/bkpr_splice_one branch 2 times, most recently from ba32cf8 to 61996ddCompareAugust 7, 2024 00:07
We weren't properly notifying that a channel output has been spent in
the case of it being spent in a splice. This fixes the notification side
of the equation, however there's still some issues remaining for the
bookkeeper side (to come).
Changelog-Fixed: We now send a `coin_movement` notification for splice confirmations of channel funding outpoint spends.
We do some fancy accounting for channel closures; since we're tagging
splice txs as closes we need to mark them as splices so we can treat them
as any other 'normal' on chain event.
@niftynei
niftyneiforce-pushed the nifty/bkpr_splice_one branch from 61996dd to 69bd5a9CompareAugust 8, 2024 16:52
@ShahanaFarooqui
ShahanaFarooqui merged commit 46dcc6e into ElementsProject:masterAug 8, 2024
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants

@niftynei@ddustin@ShahanaFarooqui
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Highlight search terms from Google/DuckDuckGo/Bing referrer\n(function() {\n var ref = document.referrer;\n var terms = [];\n \n if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) {\n var url = new URL(ref);\n var q = url.searchParams.get('q') || url.searchParams.get('p');\n if (q) {\n terms = q.split(/\\s+/).filter(function(t) { return t.length \u003e 2; });\n }\n }\n \n if (terms.length === 0) return;\n \n var style = document.createElement('style');\n style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }';\n document.head.appendChild(style);\n \n function highlight(node) {\n if (node.nodeType === 3) { // text node\n var text = node.textContent;\n var found = false;\n terms.forEach(function(term) {\n var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\') + ')', 'gi');\n if (regex.test(text)) {\n found = true;\n var frag = document.createDocumentFragment();\n var parts = text.split(regex);\n parts.forEach(function(part, i) {\n if (i % 2 === 0) {\n frag.appendChild(document.createTextNode(part));\n } else {\n var span = document.createElement('span');\n span.className = 'userscript-highlight';\n span.textContent = part;\n frag.appendChild(span);\n }\n });\n node.parentNode.replaceChild(frag, node);\n }\n });\n } else if (node.nodeType === 1 && node.childNodes) { // element\n var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT'];\n if (!skipTags.includes(node.tagName)) {\n Array.from(node.childNodes).forEach(highlight);\n }\n }\n }\n \n highlight(document.body);\n \n // Re-highlight on dynamic content\n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1 || node.nodeType === 3) highlight(node);\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Highlight Search Terms"); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

bookkeeper, meet splicing - #7533

Merged
ShahanaFarooqui merged 2 commits into
ElementsProject:masterfrom
niftynei:nifty/bkpr_splice_one
Aug 8, 2024
Merged

bookkeeper, meet splicing#7533
ShahanaFarooqui merged 2 commits into
ElementsProject:masterfrom
niftynei:nifty/bkpr_splice_one

Conversation

@niftynei

Copy link
Copy Markdown
Collaborator

update the coin-movment notifications and the bookkeeper respectively so that splices are properly accounted for (quite literally).

Prior to this we haven't been logging the spend of the funding output for splices (they're simply not recorded).

Will update with a PR built on #6980 which includes tests for these.

@niftyneiniftynei added this to the v24.08 milestone Aug 6, 2024
@niftynei
niftyneiforce-pushed the nifty/bkpr_splice_one branch 2 times, most recently from f4c7ffd to a6c5443CompareAugust 6, 2024 06:55
@niftynei
niftynei requested a review from cdecker as a code ownerAugust 6, 2024 06:55
@niftynei
niftyneiforce-pushed the nifty/bkpr_splice_one branch from a6c5443 to 3ccfb9cCompareAugust 6, 2024 06:56

@ddustinddustin left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ACK

struct amount_msat orig_our_msats,
struct amount_sat orig_funding_sats,
struct bitcoin_outpoint *funding,
u32 blockheight, struct bitcoin_txid *txid, const struct channel_inflight *inflight)

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit: newlines

@niftynei
niftyneiforce-pushed the nifty/bkpr_splice_one branch 2 times, most recently from ba32cf8 to 61996ddCompareAugust 7, 2024 00:07
We weren't properly notifying that a channel output has been spent in
the case of it being spent in a splice. This fixes the notification side
of the equation, however there's still some issues remaining for the
bookkeeper side (to come).
Changelog-Fixed: We now send a `coin_movement` notification for splice confirmations of channel funding outpoint spends.
We do some fancy accounting for channel closures; since we're tagging
splice txs as closes we need to mark them as splices so we can treat them
as any other 'normal' on chain event.
@niftynei
niftyneiforce-pushed the nifty/bkpr_splice_one branch from 61996dd to 69bd5a9CompareAugust 8, 2024 16:52
@ShahanaFarooqui
ShahanaFarooqui merged commit 46dcc6e into ElementsProject:masterAug 8, 2024
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants

@niftynei@ddustin@ShahanaFarooqui
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Strip utm_, fbclid, gclid, etc. from all links on page\n(function() {\n var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content',\n 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid',\n 'ref', 'ref_src', 'source', 'medium', 'campaign'];\n \n function cleanUrl(url) {\n try {\n var u = new URL(url, window.location.origin);\n var changed = false;\n trackingParams.forEach(function(p) {\n if (u.searchParams.has(p)) {\n u.searchParams.delete(p);\n changed = true;\n }\n });\n return changed ? u.toString() : url;\n } catch (e) {\n return url;\n }\n }\n \n function cleanLinks() {\n document.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n \n cleanLinks();\n \n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1) {\n if (node.tagName === 'A') cleanLinks();\n node.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Remove Tracking Parameters from Links"); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + '
Skip to content

bookkeeper, meet splicing - #7533

Merged
ShahanaFarooqui merged 2 commits into
ElementsProject:masterfrom
niftynei:nifty/bkpr_splice_one
Aug 8, 2024
Merged

bookkeeper, meet splicing#7533
ShahanaFarooqui merged 2 commits into
ElementsProject:masterfrom
niftynei:nifty/bkpr_splice_one

Conversation

@niftynei

Copy link
Copy Markdown
Collaborator

update the coin-movment notifications and the bookkeeper respectively so that splices are properly accounted for (quite literally).

Prior to this we haven't been logging the spend of the funding output for splices (they're simply not recorded).

Will update with a PR built on #6980 which includes tests for these.

@niftyneiniftynei added this to the v24.08 milestone Aug 6, 2024
@niftynei
niftyneiforce-pushed the nifty/bkpr_splice_one branch 2 times, most recently from f4c7ffd to a6c5443CompareAugust 6, 2024 06:55
@niftynei
niftynei requested a review from cdecker as a code ownerAugust 6, 2024 06:55
@niftynei
niftyneiforce-pushed the nifty/bkpr_splice_one branch from a6c5443 to 3ccfb9cCompareAugust 6, 2024 06:56

@ddustinddustin left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ACK

struct amount_msat orig_our_msats,
struct amount_sat orig_funding_sats,
struct bitcoin_outpoint *funding,
u32 blockheight, struct bitcoin_txid *txid, const struct channel_inflight *inflight)

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit: newlines

@niftynei
niftyneiforce-pushed the nifty/bkpr_splice_one branch 2 times, most recently from ba32cf8 to 61996ddCompareAugust 7, 2024 00:07
We weren't properly notifying that a channel output has been spent in
the case of it being spent in a splice. This fixes the notification side
of the equation, however there's still some issues remaining for the
bookkeeper side (to come).
Changelog-Fixed: We now send a `coin_movement` notification for splice confirmations of channel funding outpoint spends.
We do some fancy accounting for channel closures; since we're tagging
splice txs as closes we need to mark them as splices so we can treat them
as any other 'normal' on chain event.
@niftynei
niftyneiforce-pushed the nifty/bkpr_splice_one branch from 61996dd to 69bd5a9CompareAugust 8, 2024 16:52
@ShahanaFarooqui
ShahanaFarooqui merged commit 46dcc6e into ElementsProject:masterAug 8, 2024
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants

@niftynei@ddustin@ShahanaFarooqui
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Auto-enable theater mode on YouTube\n(function() {\n function tryTheater() {\n var btn = document.querySelector('button[aria-label=\"Theater mode\"], ytd-player #player button[title=\"Theater mode\"]');\n if (btn && !btn.classList.contains('activated')) {\n btn.click();\n }\n }\n \n // Try immediately\n tryTheater();\n \n // Try after navigation (SPA)\n var lastUrl = location.href;\n setInterval(function() {\n if (location.href !== lastUrl) {\n lastUrl = location.href;\n setTimeout(tryTheater, 500);\n }\n }, 1000);\n \n // Also try on player load\n var observer = new MutationObserver(tryTheater);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "YouTube Theater Mode Default"); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

bookkeeper, meet splicing - #7533

Merged
ShahanaFarooqui merged 2 commits into
ElementsProject:masterfrom
niftynei:nifty/bkpr_splice_one
Aug 8, 2024
Merged

bookkeeper, meet splicing#7533
ShahanaFarooqui merged 2 commits into
ElementsProject:masterfrom
niftynei:nifty/bkpr_splice_one

Conversation

@niftynei

Copy link
Copy Markdown
Collaborator

update the coin-movment notifications and the bookkeeper respectively so that splices are properly accounted for (quite literally).

Prior to this we haven't been logging the spend of the funding output for splices (they're simply not recorded).

Will update with a PR built on #6980 which includes tests for these.

@niftyneiniftynei added this to the v24.08 milestone Aug 6, 2024
@niftynei
niftyneiforce-pushed the nifty/bkpr_splice_one branch 2 times, most recently from f4c7ffd to a6c5443CompareAugust 6, 2024 06:55
@niftynei
niftynei requested a review from cdecker as a code ownerAugust 6, 2024 06:55
@niftynei
niftyneiforce-pushed the nifty/bkpr_splice_one branch from a6c5443 to 3ccfb9cCompareAugust 6, 2024 06:56

@ddustinddustin left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ACK

struct amount_msat orig_our_msats,
struct amount_sat orig_funding_sats,
struct bitcoin_outpoint *funding,
u32 blockheight, struct bitcoin_txid *txid, const struct channel_inflight *inflight)

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit: newlines

@niftynei
niftyneiforce-pushed the nifty/bkpr_splice_one branch 2 times, most recently from ba32cf8 to 61996ddCompareAugust 7, 2024 00:07
We weren't properly notifying that a channel output has been spent in
the case of it being spent in a splice. This fixes the notification side
of the equation, however there's still some issues remaining for the
bookkeeper side (to come).
Changelog-Fixed: We now send a `coin_movement` notification for splice confirmations of channel funding outpoint spends.
We do some fancy accounting for channel closures; since we're tagging
splice txs as closes we need to mark them as splices so we can treat them
as any other 'normal' on chain event.
@niftynei
niftyneiforce-pushed the nifty/bkpr_splice_one branch from 61996dd to 69bd5a9CompareAugust 8, 2024 16:52
@ShahanaFarooqui
ShahanaFarooqui merged commit 46dcc6e into ElementsProject:masterAug 8, 2024
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants

@niftynei@ddustin@ShahanaFarooqui
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Remove or un-stick sticky/fixed headers that block content\n(function() {\n function unstick() {\n document.querySelectorAll('header, nav, [role=\"banner\"], .header, .navbar, .sticky, .fixed-top, [style*=\"position: fixed\"], [style*=\"position:sticky\"]').forEach(function(el) {\n if (el.style.position === 'fixed' || el.style.position === 'sticky' || \n getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') {\n el.style.position = 'static';\n el.style.top = 'auto';\n el.style.zIndex = 'auto';\n }\n });\n }\n \n unstick();\n \n var observer = new MutationObserver(unstick);\n observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] });\n})();", "Kill Sticky Headers"); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

bookkeeper, meet splicing - #7533

Merged
ShahanaFarooqui merged 2 commits into
ElementsProject:masterfrom
niftynei:nifty/bkpr_splice_one
Aug 8, 2024
Merged

bookkeeper, meet splicing#7533
ShahanaFarooqui merged 2 commits into
ElementsProject:masterfrom
niftynei:nifty/bkpr_splice_one

Conversation

@niftynei

Copy link
Copy Markdown
Collaborator

update the coin-movment notifications and the bookkeeper respectively so that splices are properly accounted for (quite literally).

Prior to this we haven't been logging the spend of the funding output for splices (they're simply not recorded).

Will update with a PR built on #6980 which includes tests for these.

@niftyneiniftynei added this to the v24.08 milestone Aug 6, 2024
@niftynei
niftyneiforce-pushed the nifty/bkpr_splice_one branch 2 times, most recently from f4c7ffd to a6c5443CompareAugust 6, 2024 06:55
@niftynei
niftynei requested a review from cdecker as a code ownerAugust 6, 2024 06:55
@niftynei
niftyneiforce-pushed the nifty/bkpr_splice_one branch from a6c5443 to 3ccfb9cCompareAugust 6, 2024 06:56

@ddustinddustin left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ACK

struct amount_msat orig_our_msats,
struct amount_sat orig_funding_sats,
struct bitcoin_outpoint *funding,
u32 blockheight, struct bitcoin_txid *txid, const struct channel_inflight *inflight)

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit: newlines

@niftynei
niftyneiforce-pushed the nifty/bkpr_splice_one branch 2 times, most recently from ba32cf8 to 61996ddCompareAugust 7, 2024 00:07
We weren't properly notifying that a channel output has been spent in
the case of it being spent in a splice. This fixes the notification side
of the equation, however there's still some issues remaining for the
bookkeeper side (to come).
Changelog-Fixed: We now send a `coin_movement` notification for splice confirmations of channel funding outpoint spends.
We do some fancy accounting for channel closures; since we're tagging
splice txs as closes we need to mark them as splices so we can treat them
as any other 'normal' on chain event.
@niftynei
niftyneiforce-pushed the nifty/bkpr_splice_one branch from 61996dd to 69bd5a9CompareAugust 8, 2024 16:52
@ShahanaFarooqui
ShahanaFarooqui merged commit 46dcc6e into ElementsProject:masterAug 8, 2024
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants

@niftynei@ddustin@ShahanaFarooqui
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Universal Dark Mode - works on any site\n(function() {\n var enabled = true;\n \n function applyDarkMode() {\n if (!enabled) return;\n \n // Create style element if it doesn't exist\n var style = document.getElementById('universal-dark-mode-style');\n if (!style) {\n style = document.createElement('style');\n style.id = 'universal-dark-mode-style';\n document.head.appendChild(style);\n }\n \n // Dark mode CSS - inverts colors but preserves images/video\n style.textContent = '\n /* Invert everything except media */\n html {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #1a1a2e !important;\n }\n \n /* Restore images, videos, iframes, canvas */\n img, video, iframe, canvas, svg, picture, [style*=\"background-image\"] {\n filter: invert(1) hue-rotate(180deg) !important;\n }\n \n /* Preserve specific elements that should not be inverted */\n .no-dark-mode, .no-dark-mode *,\n [data-theme=\"light\"], [data-theme=\"light\"],\n .ace_editor, .ace_editor *,\n .CodeMirror, .CodeMirror *,\n .monaco-editor, .monaco-editor *,\n .markdown-body pre, .markdown-body pre *,\n .highlight, .highlight *,\n pre code, pre code * {\n filter: none !important;\n }\n \n /* Fix common UI elements */\n .modal, .popup, .dropdown-menu, .tooltip, .popover {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #2d2d44 !important;\n border-color: #444 !important;\n }\n \n /* Scrollbars */\n ::-webkit-scrollbar { background: #1a1a2e !important; }\n ::-webkit-scrollbar-thumb { background: #444 !important; }\n ::-webkit-scrollbar-thumb:hover { background: #555 !important; }\n \n /* Selection */\n ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ';\n }\n \n function removeDarkMode() {\n var style = document.getElementById('universal-dark-mode-style');\n if (style) style.remove();\n }\n \n // Toggle with Alt+Shift+D\n document.addEventListener('keydown', function(e) {\n if (e.altKey && e.shiftKey && e.key === 'D') {\n e.preventDefault();\n enabled = !enabled;\n if (enabled) {\n applyDarkMode();\n console.log('[Universal Dark Mode] Enabled');\n } else {\n removeDarkMode();\n console.log('[Universal Dark Mode] Disabled');\n }\n }\n });\n \n // Apply on load\n applyDarkMode();\n \n // Re-apply on dynamic content\n var observer = new MutationObserver(function(mutations) {\n if (enabled && !document.getElementById('universal-dark-mode-style')) {\n applyDarkMode();\n }\n });\n observer.observe(document.head, { childList: true });\n \n console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle');\n})();", "Universal Dark Mode"); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })();
Skip to content

bookkeeper, meet splicing - #7533

Merged
ShahanaFarooqui merged 2 commits into
ElementsProject:masterfrom
niftynei:nifty/bkpr_splice_one
Aug 8, 2024
Merged

bookkeeper, meet splicing#7533
ShahanaFarooqui merged 2 commits into
ElementsProject:masterfrom
niftynei:nifty/bkpr_splice_one

Conversation

@niftynei

Copy link
Copy Markdown
Collaborator

update the coin-movment notifications and the bookkeeper respectively so that splices are properly accounted for (quite literally).

Prior to this we haven't been logging the spend of the funding output for splices (they're simply not recorded).

Will update with a PR built on #6980 which includes tests for these.

@niftyneiniftynei added this to the v24.08 milestone Aug 6, 2024
@niftynei
niftyneiforce-pushed the nifty/bkpr_splice_one branch 2 times, most recently from f4c7ffd to a6c5443CompareAugust 6, 2024 06:55
@niftynei
niftynei requested a review from cdecker as a code ownerAugust 6, 2024 06:55
@niftynei
niftyneiforce-pushed the nifty/bkpr_splice_one branch from a6c5443 to 3ccfb9cCompareAugust 6, 2024 06:56

@ddustinddustin left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ACK

struct amount_msat orig_our_msats,
struct amount_sat orig_funding_sats,
struct bitcoin_outpoint *funding,
u32 blockheight, struct bitcoin_txid *txid, const struct channel_inflight *inflight)

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit: newlines

@niftynei
niftyneiforce-pushed the nifty/bkpr_splice_one branch 2 times, most recently from ba32cf8 to 61996ddCompareAugust 7, 2024 00:07
We weren't properly notifying that a channel output has been spent in
the case of it being spent in a splice. This fixes the notification side
of the equation, however there's still some issues remaining for the
bookkeeper side (to come).
Changelog-Fixed: We now send a `coin_movement` notification for splice confirmations of channel funding outpoint spends.
We do some fancy accounting for channel closures; since we're tagging
splice txs as closes we need to mark them as splices so we can treat them
as any other 'normal' on chain event.
@niftynei
niftyneiforce-pushed the nifty/bkpr_splice_one branch from 61996dd to 69bd5a9CompareAugust 8, 2024 16:52
@ShahanaFarooqui
ShahanaFarooqui merged commit 46dcc6e into ElementsProject:masterAug 8, 2024
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants

@niftynei@ddustin@ShahanaFarooqui