Repository navigation
Conversation
3dd9ac7 to
6ac7021
Compare
|
Verification follow-up on |
Preserve deletion dispatch and upstream onGatewayReady together. Regenerate OpenRPC from Python contracts, retaining SessionsDeletedPayload and upstream SetupBeat. Independent static review passed; renderer 3291, scoped Python 153, typecheck, lint, contract freshness and 12 checks pass. Python focused rerun overlaps broader scope; no full-suite/native E2E claim.
|
Conflict refresh pushed as 0d2d45a, merging frozen upstream Retained both upstream onGatewayReady/onboarding handling and deletion dispatch/profile fences. Regenerated OpenRPC from Python contracts, preserving SessionsDeletedPayload and upstream SetupBeat; generated TypeScript freshness checked. Renderer scope: 284 files / 3291 passed. Broader prior Python path scope: 153 passed, no failures; focused 116-pass rerun overlaps, not additive. Typecheck, relevant eight-file ESLint, scripts/check 12 checks, regeneration/freshness passed. Earlier 12 Python failures did not reproduce in this isolated scoped run; root-cause attribution or whole-suite success is not claimed. Native packaged deletion E2E remains unverified; existing non-Draft review status retained. Independent static review found no security/logic blockers, and the committed tree equals the tested/reviewed candidate. Separate merge-tree check against latest main |
Retain deletion dispatch with upstream owner-aware replay-gap recovery. Tested/reviewed tree 26b17c1; renderer 3376, related Python 48, typecheck/lint/contract freshness and all 12 upstream-relative checks pass. No full-suite/native E2E claim.
|
Recurrent content conflict resolved and pushed as 6f61fff, merging upstream Exact published tree matches the tested/independently statically reviewed candidate. Renderer 3376 passed, related Python 48 passed, typecheck/lifecycle lint and generated-contract freshness pass. All 12 scripts/check checks pass with explicit frozen upstream base; the earlier broad-default-base timeout is retained as historical failure, not relabeled success. No checks skipped. No new plugin features, production changes, merge or native/full-suite success claim. Existing review-readiness state unchanged; remote CI/maintainer gates still apply. |
Merge frozen upstream 73b9f2a. Retain settled-mtime cache semantics and ID deletion broadcasts, with a same-tick exactly-once watcher regression. Tested and independently reviewed tree 9ed0179. Renderer 3376 and related Python 43 pass; typecheck, contracts freshness and 12 blocking checks pass. No full-suite or native E2E claim.
|
New upstream conflict resolved and pushed as d928339, merging frozen main The watcher keeps upstream's Published tree Existing non-Draft status retained; maintainer review and workflow approval remain separate gates. No new plugin features, production changes or upstream merge. |
What does this PR do?
Makes committed, externally deleted sessions disappear promptly from Desktop's ordinary, cron, and messaging sidebar lists without waiting for a generic list refresh or interrupting a live transcript/composer.
The existing watcher samples session-table content every 0.5 seconds, but its generic
sessions.changedbroadcast has a two-second floor and Desktop can defer refetches during interaction. Exact committed row disappearance can evict sidebar IDs without a transcript refresh.Ready for maintainer review, not a claim of merge readiness: relevant expanded local verification and independent automated code review are complete. Upstream Actions require maintainer action; no green upstream CI, whole-suite success, or native packaged-app deletion E2E is claimed.
Related Issue
No issue is closed by this PR. Related proposals were inspected:
Type of Change
Changes Made
sessions.deleted { session_ids, profile }between two readable ID snapshots, independently of the generic refresh floor. First sightings, missing stores, foreign schemas, locked reads, and uncommitted writes do not authorize deletion.live-sync.tssignal-only; the sidebar action lives in a topical sibling.How to Test
Verification
Final head:
9097781471a47ae71513c9bd0e445249aeee02ed.Baseline:
1744a19e0df568c647e4f3ff9c37f2a284a282fb.Tests were run on macOS arm64 in an isolated development checkout. Baseline checks used a separate detached worktree, run serially after head checks; no stash/restore overlap. Source remained unchanged during every final verification step.
src/store/andsrc/app/session/hooks/testspython scripts/check --base <baseline>git diff --check; added-line credential/path/injection scanThe original committed-deletion regression was demonstrated RED on the unmodified watcher. Follow-up RED tests exposed profile-blind stale-page fencing, a foreign writer blocking an owned twin, stale project-tree previews, and live lineage tips in dedicated lists; the final focused run passes.
Verification limits and CI
node_modules. After restoring those isolated dependencies, the same scope ran to completion and passed; that startup failure is not counted as a test result.action_requiredwith no reported check runs. The contributor cannot approve upstream workflows; the repository's approval-policy details return HTTP 403. Please approve/inspect the pending workflow runs. An empty checks list is not a green build.Checklist
Screenshots / Logs
Behavior tests use real temporary SQLite stores and renderer stores/lifecycle routing. No production data or private local paths are included. The local receipt preserves exact commands, exit codes, immutable-tree checks, baseline failure-ID comparison, JSON renderer reports, RED/GREEN logs and independent-review results.
Conflict refresh — 0d2d45a
Earlier test sections are historical pre-refresh evidence. This commit merges frozen upstream
e06df9c2eae6901f4c88f464e0ae6e753c0428b8; published tree exactly matches the tested/reviewed candidate.Retained both upstream onGatewayReady/onboarding handling and deletion dispatch/profile fences. Regenerated OpenRPC from Python contracts, preserving SessionsDeletedPayload and upstream SetupBeat; generated TypeScript freshness checked. Renderer scope: 284 files / 3291 passed. Broader prior Python path scope: 153 passed, no failures; focused 116-pass rerun overlaps, not additive. Typecheck, relevant eight-file ESLint, scripts/check 12 checks, regeneration/freshness passed. Earlier 12 Python failures did not reproduce in this isolated scoped run; root-cause attribution or whole-suite success is not claimed. Native packaged deletion E2E remains unverified; existing non-Draft review status retained.
Independent static review found no security/logic blockers; this does not imply the reviewer executed suites. PR-delta whitespace is clean; unrelated upstream whitespace findings were retained. Latest main
d97007c32d6340f7ba79ac1dfb5773cc00846448was separately checked with merge-tree (exit 0); its newer delta is release-tool scripts/tests. This is a conflict check, not runtime validation of a synthetic combined tree. Exact-head GitHub readback reportedmergeable=true,mergeable_state=blocked; content conflicts are cleared, but review/design/workflow gates remain. No upstream PR merge, production code/database change, app edit or restart performed.Recurrent conflict refresh — 6f61fff
Merged frozen upstream
7bda2a3368024f7ae1c70cef16583e7c2c891674. Lifecycle imports now preserve both session-deletion dispatch and upstream owner-aware replay-gap recovery. Exact published tree26b17c1f7fd70496569a68e5e6a6350f7549fe5bmatches the runtime-tested/independently statically reviewed candidate.Validation: renderer 301 files / 3376 passed; related Python 48 passed; Desktop typecheck and lifecycle ESLint pass. Contract generator
--checkpasses.scripts/check --staged --base 7bda2a3368024f7ae1c70cef16583e7c2c891674completes in 23.33 seconds with 12 checks OK, 0 blocking/0 advisory. An earlier default-base scan timed out while examining thousands of inherited upstream files; its failed record remains preserved. No checks were disabled; the successful rerun uses the explicit frozen upstream to select the actual PR delta.No new cleanup plugin/migration features or production changes. Full suite/native E2E remain unverified. This is conflict repair and review-readiness maintenance, not green remote CI or maintainer approval.