Repository navigation
afterCommit follow-ups: end on uninstall, revoke or lost read; drop stale proposals - #1934
Closed
michielbdejong wants to merge 2 commits into
Closed
michielbdejong wants to merge 2 commits into
michielbdejong wants to merge 2 commits into
Conversation
… proposals (#1907) WIP: not yet compiled or tested. - Uninstalling the app or its Installation, or revoking the Installation, ends the subscription (`uninstalled` / `revoked`) and drops its markers, delivery, waiting proposal and own-write records. Pausing still waits. - The worker listens to the store's change events: a change to a subscription's table, one of its ancestors, View, app or Installation re-checks it on the next tick, so losing read access ends it promptly. A lagging broadcast and the 10-minute sweep re-check everything. - A proposal records the source hash that made it; if the app's source changes while it waits, it is discarded (journal abandoned with the reason) and the same page is delivered again to the new source. Answering a stale one is refused. - Tests for each, and for a person's edit landing while a proposal waits. - Docs, planning notes and TESTING_COVERAGE updated. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_011KbrNpTmoDhqsVVrSxb64R
Tested: cargo test -p atomic-server --lib -- after_commit (29 passed, 7 of them new), clippy --all-targets -D warnings, cargo fmt --check. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_011KbrNpTmoDhqsVVrSxb64R
8 tasks done
Contributor
Author
|
Closing as part of the plugin-host stack cleanup (Q-101): not needed by atomic-plugins now. See the inventory at #1726 (comment). The branch is kept, and pin candidates are unaffected. Closed by Claude (VPS coordinator) on behalf of Michiel. |
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.
Related Issues
Part of #1907 (the server-side items). Stacked on #1906: the base is its branch, so the diff shows only these commits. Everything is behind
--plugin-after-commit, like #1906.What changes
ended_via: "uninstalled"/"revoked"). Its markers, delivery, waiting proposal and own-write records are deleted. A paused Installation still only waits.Refactor:
eligibility's end checks moved intorow_class_or_end/end_reason, which the event path and the sweep share.end_finishedtakes the delivery lock, so a delivery in progress never saves over an ended subscription.Not in this PR: the Playwright spec from #1907.
Checklist
server/src/plugins/after_commit_test.rs:cargo test -p atomic-server --lib -- after_commit(29 passed),cargo clippy -p atomic-server --all-targets -- -D warnings,cargo fmt --check.docs/src/plugins/creating-plugins.md(when a subscription ends; a release change drops a waiting proposal),planning/durable-after-commit.mdandTESTING_COVERAGE.md.🤖 Generated with Claude Code
https://claude.ai/code/session_011KbrNpTmoDhqsVVrSxb64R
Generated by Claude Code