Skip to content

CI rehearsal: upstream PR #2238 - #1

Draft
SadiqJaf wants to merge 33 commits into
codex-pr2238-ci-base-4466280from
codex/ci-rehearsal-pr2238-3105d25
Draft

SadiqJaf wants to merge 33 commits into
codex-pr2238-ci-base-4466280from
codex/ci-rehearsal-pr2238-3105d25

Conversation

@SadiqJaf

@SadiqJaf SadiqJaf commented Sep 5, 2026 •

Copy link
Copy Markdown
Owner

Current rehearsal — 9 September 2026

Upstream lightninglabs#2238 has a new conflict after upstream lightninglabs#2265. The history-preserving candidate retains the custom-anchor repair queries alongside upstream's orphan-UTXO candidate query. Generated bindings match SQLC 1.29.0 regeneration exactly. No workflow definitions changed. Do not merge this rehearsal PR.

  • Upstream/fork main and rehearsal base: 7deef4bd8bf7ca8888f062c9cb05f03822f68931.
  • Candidate head: c78723d2fb6b89f4c1ca05542f7df2796d436725.
  • Fork merge ref: 190b3243f81c44258eb935fde561045e6f93da3e; tree: 374dc5b26fe9f78baee0725f7a3c7bd864998acd, identical to the candidate tree.
  • Local checks passed: full tapdb (204.655s) and tapgarden (213.499s) suites; targeted database race tests (27.411s); SQLC regeneration; pinned golangci-lint v2.10.1 on tapdb (0 issues); formatting, diff checks and release-note check using upstream PR number 2238.
  • CI 34319863851: passed on attempt 1, 40 successful jobs plus the existing fork-only release-note metadata skip; no failed-job retries.
  • Backward compatibility 34319863829: passed.
  • After all local and fork checks passed, upstream base/source were refreshed and confirmed unchanged. Upstream tapgarden: support caller-defined genesis anchor PSBTs lightninglabs/taproot-assets#2238's source was fast-forwarded from 542192bf3cd3274212a5e2c8dd982c5f763fdb36 to the exact candidate. GitHub reports MERGEABLE; it remains OPEN with separate upstream requirements (mergeStateStatus: BLOCKED). Upstream merge ref d20faac291516d68ee4660e4cc91d06d07f562ae has the same 374dc5b2 tree as the local candidate and fork merge. SQLC CI job 102363883554's raw log confirms checkout of 190b3243.

Updating base and head triggered duplicate events with verified identical head/base inputs. CI 34319862843 was cancelled as redundant; compatibility 34319862822 was automatically cancelled. The separate fork-main push run 34319859282, created by this sync for unmodified upstream 7deef4bd, was also cancelled to prioritize the requested PR CI. These cancelled runs are not passes. No force push or PR merge was performed. The pre-existing fork-only release-note metadata skip remains; the exact checker passed locally with the correct upstream PR number. Fork checks do not replace official upstream CI or maintainer review. Satscrip branches/worktrees remain untouched.

Prior rehearsal history (8 September and earlier; not validation of the current candidate)

CI rehearsal for lightninglabs/taproot-assets#2238, using unchanged upstream workflow definitions on GitHub-hosted runners. Do not merge this temporary PR.

Current source identity — 8 September 2026

The history-preserving merge resolves upstream lightninglabs#2262's cancellation-lease cleanup against the custom-anchor implementation. All cancellation paths share a dispatcher: ordinary wallet-funded inputs retain upstream cleanup; custom anchors release only recorded leases with their batch-specific owner ID and never fall through to unlocking foreign inputs. Added mixed-input and all-foreign cancellation regression cases. No workflow definitions were changed.

Current validation

  • Targeted cancellation/lease tests, including TestBatchedAssetIssuance: passed (74.296s).
  • Targeted race tests: passed (4.531s); expanded coverage of all Issue [feature]: Enhance caretaker w/ ability to set user-defined UTXOs and GenesisAmtSats values lightninglabs/taproot-assets#721 cancellation/lease lifecycle cases also passed (33.962s).
  • CI-pinned golangci-lint v2.10.1 on tapgarden: 0 issues.
  • git diff --check, formatting and exact upstream-number release-note check: passed.
  • Broader affected-package local suite: passed (tapgarden, tapdb, lndservices, rpcserver, tapnode/tapnodemock).
  • CI: passed, 40 successful jobs plus the existing release-note skip. Attempt 1 had one failed PostgreSQL integration partition; its failed-only retry passed on the unchanged candidate. Successful unaffected jobs are carried from attempt 1, not claimed as re-executed in attempt 2.
  • Backward Compatibility Tests: passed.

Updating both the rehearsal base and head generated duplicate events. CI run 34274063664 was cancelled after verifying identical PR head/base inputs; the compatibility workflow automatically cancelled duplicate 34274063650. These cancellations are not successful test executions. Fork-main push checks are a different source context, not a substitute for this PR's checks.

Retained attempt-1 failure

PostgreSQL integration partition 1 failed while starting nodes for collectible_send and psbt_grouped_interactive_split_send, before those test bodies ran. Daemon logs show a database migration failing with transaction commit failed (conn closed) / driver: bad connection, and another node becoming fully active after the harness startup deadline, followed by teardown. The logs-itest-postgres-1 artifact is retained (artifact ID 10076149794). A transient startup/resource issue is a hypothesis, not an established root cause. No source or timeout changes were made for the successful targeted retry; a retry does not erase this failure history. Retry job 102234181027's raw checkout log confirms the same df3141a4 merge revision.

Historical rehearsal

At 7cc9a174, CI and backward compatibility passed, apart from the documented release-note metadata skip. Those results do not certify this new merge.

The earlier 3105d25c rehearsal exposed an atomic batch-copy warning and seven line-length warnings; 7cc9a174 fixed them and added staging-isolation regressions. Failure history remains in the initial CI run.

Fork metadata exception and limits

The existing no-changelog label is fork-only: the unchanged release-note checker searches for an upstream URL using this fork's PR number. The exact script was executed locally with GITHUB_REF=refs/pull/2238/merge and passed. The fork workflow's release-note job remains intentionally skipped; no workflow check or source validation was weakened.

A fork pass does not replace upstream maintainer approval or official upstream checks. Recheck upstream base/head before updating lightninglabs#2238; changed inputs require renewed validation. Satscrip's main, integration and Issue lightninglabs#186 worktrees are untouched. No force push or upstream merge is part of this rehearsal.

…tom-genesis-psbt

# Conflicts:
#	docs/release-notes/release-notes-0.9.0.md
#	lndservices/chain_bridge_test.go
#	tapdb/sqlc/querier.go
@SadiqJaf SadiqJaf added the no-changelog Fork CI rehearsal: validate upstream release-note PR number separately label Sep 5, 2026
@SadiqJaf SadiqJaf closed this Sep 5, 2026
@SadiqJaf SadiqJaf reopened this Sep 5, 2026
Use MintingBatch.Copy to avoid copying atomic state, cover staging isolation and error paths, and wrap wallet-anchor lines to satisfy CI lint.
@SadiqJaf SadiqJaf changed the title CI rehearsal: upstream PR #2238 at 3105d25 CI rehearsal: upstream PR #2238 Sep 5, 2026
Integrate upstream cancellation lease cleanup through a shared dispatcher. Preserve batch-scoped custom leases and never unlock foreign custom-anchor inputs through the ordinary wallet fallback. Add mixed-input and all-foreign cancellation regressions.

Signed-off-by: Sadiq Jaffer <sadiq.jaffer@satscryption.io>
Preserve both custom-anchor key repair queries and upstream orphan-UTXO candidate selection at their shared SQL insertion point. Keep generated bindings and upstream orphan-validation regressions intact.

Signed-off-by: Sadiq Jaffer <sadiq.jaffer@satscryption.io>
Integrate upstream cd3253d through a history-preserving merge. Retain custom genesis anchor changes alongside upstream proof encoding, grouped receive, invoice validation, integration coverage, and dependency updates.

Signed-off-by: Sadiq Jaffer <sadiq.jaffer@satscryption.io>
Merge upstream 9bf78a5. Preserve custom-anchor publication retries and batch-scoped lease renewal after registering the new mint anchoring watcher, and release only recorded custom leases on durable abandonment. Retain legacy confirmation behavior and immutable signed packets. Regenerate SQL and RPC bindings with pinned tools and add watcher failure, confirmation, retry and abandonment regressions.

Signed-off-by: Sadiq Jaffer <sadiq.jaffer@satscryption.io>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

no-changelog Fork CI rehearsal: validate upstream release-note PR number separately

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant