Release: develop -> main - #98
Merged
Merged
Conversation
* Add skippable onboarding gates and member profile notes Name and Lightning Address can be skipped; rules stay required. Owner JSON gains missing. Forum, contact, invoice, and member reads use 409 missing_requirements. First saved name creates one top-level profile note and GET /members/:id returns that live identity. * Fix GET /me test typing for the missing field Include missing on the owner JSON assertion type so tsc accepts the direct equality check. * Format skip and member-profile files with Prettier CI prettier --check failed on the new owner-JSON and members routes. * Cover member 503 and provision profile notes; skip backfill pushes Dead name-409 after requireAction is gone. Worker backfill no longer enqueues forum push for historical profile notes. * Run profile-note backfill after the rest of the worker tick Creating notes at tick start stole the sign/publish batch from existing pending rows and inflated publish counts in worker tests. * Give the worker-test profile note a unique event id Inbound reply fixtures used aa… for m1, which collided with the seeded profile note and skipped kind:1 indexing. * Skip hashtag re-sign for profile forum notes Profile notes store a display name and must not be rewritten with Damus #bitcoin/#21gifts, which was republishing them on later ticks. * Cover profile-note push, skip timestamps, and debug backfill Push enqueue failure, mapped skip timestamps, POST /me/name with a push store, and debug provision of an existing named account now exercise the remaining profile-note branches. * Document members 503, tighten profile-note docs, and cover debug push SPEC now includes the store-unavailable 503. Debug provision tests pass a push store so the optional enqueue path is covered. * Share debug profile-note args so optional push is covered One helper owns the optional pushStore spread; provision tests cover both the configured and unconfigured branches. * Re-read the account before attaching a profile note A stale snapshot no longer overwrites live fields. A raced insert is deleted when another note already won. Worker TSDoc skips hashtag resign on profile notes. * Keep the incoming name when attaching a profile note Re-read merges live columns but still persists the name from the caller when the stored row has none, so POST /me/name does not write null. * Apply the new name after attaching the profile note ensureProfileMessage only sets profileMessageId on the live row. POST /me/name writes the requested name afterwards so a rename is not kept at the previous live value. * Agree to rules before the forum replies e2e posts forum.post now requires rules, and debug provision does not set rulesAgreedAt. * Let ensureProfileMessage persist debug profile notes A second updateAccount after a successful ensure rewrote the live row and could clobber concurrent fields. * Re-read the live account after attaching a profile note POST /me/name now copies the requested name onto the current row so a concurrent lightning-address or rules write is not overwritten. SPEC documents 409 missing_requirements on pay-on-note. * Cover the live re-read after attaching a profile note * Delete a raced profile note when a later write wins
TaprootFreak
approved these changes
Sep 2, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Automatic Release PR
Commits: 1 new commit(s)