Closed
Labels
enhancementNew feature or requestNew feature or requestready-for-agentFully specified, ready for an AFK agentFully specified, ready for an AFK agent
Description
Parent
What to build
Close the correctness gaps across Subset, Restore, and category-based Mutation Intents. Serialize Analysis Mutations per Session, reject stale intents before mutation, keep failed transitions atomic, and ensure stale asynchronous payloads cannot overwrite the current View.
Acceptance criteria
- Only one Analysis Mutation can commit at a time per Session.
- An intent carrying an old Analysis Version is rejected without mutation, retry, or version publication.
- Empty and already-applied requests are safe no-ops.
- Failures before or during object replacement leave the active Analysis, lineage, and browser state unchanged.
- Stale metadata, reduction, expression, and transfer-error results are discarded before browser state changes.
- User-facing failures use stable path-free reason codes and do not expose raw R conditions, local paths, or stack traces.
- Combined tests cover Subset, Restore, category context, stale requests, mutation serialization, and atomic failure behavior.
Blocked by
- Restore prior scientific state as a forward Analysis Version #24 - Restore prior scientific state as a forward Analysis Version.
- Subset category selections through server-side category context #25 - Subset category selections through server-side category context.
Metadata
Metadata
Assignees
Labels
enhancementNew feature or requestNew feature or requestready-for-agentFully specified, ready for an AFK agentFully specified, ready for an AFK agent
Activity
obenno commentedon Aug 9, 2026
Implemented verification hardening in commit 223136a: test(03): cover analysis mutation failure guards.
Validation completed:
The existing Session-scoped Analysis Transition now has explicit regression coverage for an unexpected transition exception: it leaves object, backup, transition state, and Change-set unchanged, then releases the mutation lock. Browser coverage also verifies that an older reduction transfer_error cannot overwrite a newer successfully committed reduction. DEVELOPMENT.md now states the serialized, atomic publication and stale-payload rules.
obenno commentedon Aug 9, 2026
Closing as completed in 223136a.